如何像应用程序一样创建World Clock

时间:2012-02-23 09:29:29

标签: iphone objective-c ios ios4

我想创建iPhone嵌入式“世界时钟”之类的应用程序。目前,我可以创建一个可以显示当前设备时间的单个时钟(模拟时钟)。

在这里,我正在使用

NSDateComponents *dateComponents = [[NSCalendar currentCalendar] components:(NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit) fromDate:[NSDate date]];    

检索当前日期/时间。基于此NSDate对象的模拟时钟逻辑。

问题是,如何才能将国家(澳大利亚,英国......)的日期/时间纳入此NSDate格式?

----------还有,当我NSLog(@“%@”,[NSDate date]);它给了Grin-witch时间,而不是当前的模拟器时间---------

2 个答案:

答案 0 :(得分:0)

您需要将时间转换为您需要的任何语言环境,请参阅此答案以了解如何执行此操作,

NSDate is 5 hours off

答案 1 :(得分:0)

使用NSCalendar& NSTimeZone,您可以获取日期/时间,自动播放代码片段,了解如何获取伦敦当前的日期/时间。

let timeZone = NSTimeZone(abbreviation: "BST")
let calendar: NSCalendar! = NSCalendar(identifier: NSCalendarIdentifierGregorian)
let zoneComponents = calendar.componentsInTimeZone(self.timeZone, fromDate: NSDate())
hour = zoneComponents.hour
minute = zoneComponents.minute
second = zoneComponents.second

您可以使用名为SmileClock的库来实现所有。