Vin*_*igi 0 xcode objective-c nsdate nsdateformatter ios
double duration = 20; // duration is in seconds
NSDate* durationDate = [[NSDate alloc]initWithTimeIntervalSinceReferenceDate:duration];
NSDateFormatter *formatter = nil;
formatter = [[[NSDateFormatter alloc] init] autorelease];
[formatter setDateFormat:@"mm:ss"];
NSString *durationString=[formatter stringFromDate:durationDate];//here durationString should have 20
Run Code Online (Sandbox Code Playgroud)
但我到了30:20?从这里加入30分钟.我试过给出更大的数字然后同样的结果
请让我知道对此的想法以及如何解决这个问题
你可能在印度标准时间?
参考日期定义为格林威治标准时间午夜.IST是GMT + 5:30.
因此,当您在参考日期添加20秒时,您将获得格林尼治标准时间午夜20秒.然后,当您创建日期格式化程序并且不为其设置任何其他内容时,它将在您设备的自然时区中运行.这意味着当你在时间结束时询问它的分钟和秒数时,你会得到30分20秒.
NSDates是绝对时间,任何时区或日历的摘要.如果五个不同时区的五个设备[NSDate date]同时调用以获取当前时间,则它们都会获得具有相同值的对象.
NSDateFormatter结合了NSDate具有NSCalendar和NSTimeZone确定分,秒,小时,月,年等.
| 归档时间: |
|
| 查看次数: |
222 次 |
| 最近记录: |