我正在尝试以某种格式打印出日期:
NSDate *today = [[NSDate alloc] init];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyyMMddHHmmss"];
NSString *dateStr = [dateFormatter stringFromDate:today];
Run Code Online (Sandbox Code Playgroud)
如果将iPhone设置为24小时,这样可以正常工作,如果另一方面用户已将其设置为24小时时间,然后返回到上午/下午(它可以正常工作,直到您切换此设置)然后它会附加AM/PM尽管我没有要求它:
20080927030337 PM
Run Code Online (Sandbox Code Playgroud)
我做错了什么或这是固件2.1的错误?
编辑1:使描述更清晰
编辑2解决方法:事实证明这是一个错误,修复它我将AM和PM字符设置为"":
[dateFormatter setAMSymbol:@""];
[dateFormatter setPMSymbol:@""];
Run Code Online (Sandbox Code Playgroud) 如果我有一个像UILabel链接到xib文件的东西,我是否需要在我的视图dealloc上发布它?我问的原因是因为我没有分配它,这让我觉得我不需要释放它?例如(在标题中):
IBOutlet UILabel *lblExample;
Run Code Online (Sandbox Code Playgroud)
在实施中:
....
[lblExample setText:@"whatever"];
....
-(void)dealloc{
[lblExample release];//?????????
}
Run Code Online (Sandbox Code Playgroud) 假设我在Objective-c中有一个类,其静态方法如下:
+ (NSError *)executeUpdateQuery:(NSString *)query, ...;
Run Code Online (Sandbox Code Playgroud)
我如何从Swift中调用它?自动完成功能无法识别它,编译器对以下内容不满意:
MyClassName.executeUpdateQuery("")
Run Code Online (Sandbox Code Playgroud)
抱怨'MyClassName.Type没有名为executeUpdateQuery的成员'
在过去一个月左右的时间里,我一直在教自己Objective-C(我是一名Java负责人),现在我的大脑已经被大部分包围了.有一件事让我感到困惑:通过@class导入一个类与进行#import之间的区别是什么?
一个比另一个好,还是在某些情况下我需要使用一个而不是另一个?到目前为止我一直在使用#import.
只是想知道如何以编程方式隐藏ICS back/home/etc软件按钮.就像Youtube应用在播放视频时所做的那样.我想在播放视频时隐藏它们,但是如果用户点击屏幕则将其隐藏起来.
我似乎无法在网络上或Google的文档中找到它.
我现在正在处理一个Oracle DBA,他已经给我发了一些他已经完成的分析.他的报告中的一个术语是"缓冲获取",任何想法这实际意味着什么?我的猜测是从缓冲区中检索的字节,但我真的不知道.这是一些示例输出:
Buffer Gets Executions Gets per Exec %Total Time (s) Time (s) Hash Value
--------------- ------------ -------------- ------ -------- --------- ----------
137,948,100 31,495 4,380.0 98.4 6980.57 6873.46 4212400674
Module: JDBC Thin Client
SELECT fieldOne, fieldTwo, fieldThree, fieldFour, fieldFive FROM TableExample
WHERE fieldOne = 'example'
Run Code Online (Sandbox Code Playgroud)
知道'获得每个执行'的含义也是很方便的,因为我猜它们是相关的?我是程序员,但不是DBA.
是否可以在Objective-C中声明Delegates之类的匿名实现.我想我的术语是正确的,但这是一个java示例:
myClass.addListener(new FancyInterfaceListener({
void onListenerInterestingAction(Action a){
....interesting stuff here
}
});
Run Code Online (Sandbox Code Playgroud)
因此,例如,处理一个UIActionSheet调用我必须声明另一个方法在同一个班,如果我想通过它的数据,这似乎有点傻,因为我必须将这些数据保存为一个全局变量.以下是使用确认对话框删除内容的示例,询问您是否确定:
-(void)deleteItem:(int)indexToDelete{
UIActionSheet *confirm = [[UIActionSheet alloc] initWithTitle:@"Delete Item?" delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:@"Delete" otherButtonTitles:nil];
[confirm showInView:self.view];
[confirm release];
}
Run Code Online (Sandbox Code Playgroud)
和同一类中的UIActionSheetDelegate:
- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex{
if (buttonIndex == 0){
[[Settings sharedSettings] removeItemAtIndex:/*need index variable here*/];
[drinksTable reloadData];
}
}
Run Code Online (Sandbox Code Playgroud)
我想要做的是将其声明为内联,就像我在顶部的java示例中所做的那样.这可能吗?
我想要做的就是让用户从地址簿中选择一个号码.我在这个问题中找到了代码:
ABMultiValueRef container = ABRecordCopyValue(person, property);
CFStringRef contactData = ABMultiValueCopyValueAtIndex(container, identifier);
CFRelease(container);
NSString *contactString = [NSString stringWithString:(NSString *)contactData];
CFRelease(contactData);
Run Code Online (Sandbox Code Playgroud)
问题是在第二行(在3.0设备上运行时)我收到以下错误:
客户经理无法找到标识为MobileMe:rustyshelf的帐户
其次是:
程序接收信号:"EXC_BAD_ACCESS".
这都在picker委托方法中:
- (BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person property:(ABPropertyID)property identifier:(ABMultiValueIdentifier)identifier{
Run Code Online (Sandbox Code Playgroud)
这只是我的地址簿中的一个联系人,它与Mobile Me同步
编辑:我认为这可能是SDK的一个错误,它发生在我的一些联系人,而不是其他人...
我已经将一个gif图像下载到一个NSData对象中(我已经检查了NSData对象的内容并且它已经填充了).现在我想将该图像加载到我的UIWebView中.我尝试过以下方法:
[webView loadData:imageData MIMEType:@"image/gif" textEncodingName:nil baseURL:nil];
Run Code Online (Sandbox Code Playgroud)
但我得到一个空白的UIWebView.直接从同一URL加载图像可以正常工作:
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:imageUrl]];
[imageView loadRequest:request];
Run Code Online (Sandbox Code Playgroud)
我是否需要将textEncodingName设置为某个内容,或者我是否在做其他错误的操作?
我想手动加载图像,以便向用户报告进度,但它是一个动画gif,所以当它完成后我想在UIWebView中显示它.
编辑:也许我需要以某种方式将我的图像包装在HTML中?有没有办法在不必将其保存到磁盘的情况下执行此操作?
在我的iPhone项目中,我有一个UIView,我在其中实现了drawRect方法:
- (void)drawRect:(CGRect)rect {
CGContextRef context = UIGraphicsGetCurrentContext();
Run Code Online (Sandbox Code Playgroud)
在方法内部,我使用此上下文进行了大量的线条,图像和文本绘制.问题是,当我重新使用此视图时,上下文不会被重置.是否有一种方法我可以调用以某种方式重置上下文?
iphone ×5
objective-c ×5
cocoa-touch ×3
android ×1
android-4.0-ice-cream-sandwich ×1
delegates ×1
fullscreen ×1
ios ×1
nsdata ×1
nsdate ×1
oracle ×1
sql ×1
swift ×1
uiwebview ×1