How to get the timezone of a location in iOS app?
本问题已经有最佳答案,请猛点这里访问。
我是iOS开发的新手。
我正在尝试构建一个主要可以做两件事的应用程序:
一个。 获取用户的系统时间(比如,他的手机在伦敦,所以他的时间)
湾 在特定地点(比如旧金山)获得时间
然后,我想计算位置之间的时间差(例如伦敦,英国比加利福尼亚州旧金山早8小时)
有人可以帮我提一下如何得到(a)和(b)?
对于(a)和(b):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | let offset = TimeZone.current.secondsFromGMT(); print(offset)//Your current timezone offset in seconds let loc = CLLocation.init(latitude: 48.8566, longitude: 2.3522);//Paris's lon/lat let coder = CLGeocoder(); coder.reverseGeocodeLocation(loc) { (placemarks, error) in let place = placemarks?.last; let newOffset = place?.timeZone?.secondsFromGMT(); print(newOffset);//Paris's timezone offset in seconds } |
如果您正在寻找当地时间,您可以使用:
1 2 3 4 5 6 7 | NSTimeZone *timeZoneLocal = [NSTimeZone localTimeZone]; NSString *strTimeZoneName = [timeZoneLocal name]; or NSTimeZone *timeZoneLocal = [NSTimeZone defaultTimeZone]; NSString *strTimeZoneName = [timeZoneLocal name]; |
您可能只需要两个文本字段,并让用户比较时差。