我知道NSDateformatter功能套件对人类来说是一个福音,但同时它对我来说非常困惑.我希望你能帮助我.
在我的代码中,有一个代表一个月的int.所以:1将是1月,2月2日等.
在我的用户界面中,我想将此整数显示为正确的月份名称.此外,它应该遵守设备的区域设置.
感谢您的见解
与此同时,我做了以下工作:
int monthNumber = 11
NSString * dateString = [NSString stringWithFormat: @"%d", monthNumber];
NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"MM"];
NSDate* myDate = [dateFormatter dateFromString:dateString];
[dateFormatter release];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"MMMM"];
NSString *stringFromDate = [formatter stringFromDate:myDate];
[formatter release];
Run Code Online (Sandbox Code Playgroud)
这是这样做的方法吗?这看起来有点罗嗦.
我正在使用dateformatter在我的应用程序中获取日期和时间.但是当我更改手机的语言时,我遇到了一个问题.日期格式化器返回我选择的手机语言的日期和时间,因为我们的应用程序崩溃,因为我们不支持多种语言.
请找到以下代码段:
NSDate *date=[NSDate date];
NSDateFormatter *objTimeFotmatter=[[NSDateFormatter alloc]init];
[objTimeFotmatter setDateFormat:@"HH:mm"];
NSDateFormatter *objDayFotmatter=[[NSDateFormatter alloc]init];
[objDayFotmatter setDateFormat:@"EEEE"];
NSString *objTime=[objTimeFotmatter stringFromDate:date];
NSString *objDay=[objDayFotmatter stringFromDate:date];
NSLog(@"objTime=%@",objTime);
NSLog(@"objDay=%@",objDay);
Run Code Online (Sandbox Code Playgroud)
当我选择手机语言作为古吉拉特语(印度)时,我使用nslog看到的输出如下,
2011-11-24 11:23:20.221 Belkin_Plugin[1110:707] objTime=??:??
2011-11-24 11:23:20.227 Belkin_Plugin[1110:707] objDay=???????
Run Code Online (Sandbox Code Playgroud) 我和我的同事正在讨论我们编写iPhone应用程序的愿望.他似乎相信为iPHone计划需要100美元的许可费用?这听起来不错吗?
我可以想象,他们可能会向您收取使用他们为此目的开发的一些工具,但他们不会/不能向您收取只是为了能够在设备上编程.