NSTimeZone-Coordinate 1.0.3

NSTimeZone-Coordinate 1.0.3

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布最新版本2019年8月

Jason Wray 维护。



  • 作者:
  • Jason Wray

NSTimeZone+Coordinate

NSTimeZone 添加了一个 coordinate 属性,这在尚未获得位置权限、位置请求被拒绝或无法请求的情况下非常有用。

这些坐标来自 IANA 时间数据库,并代表给定时区内人口最多的地方(不是中心点)。

Example map showing pins at timezone coordinates

用法

CLLocationCoordinate2D coordinate = NSTimeZone.localTimeZone.coordinate;

NSLog(@"%@: %f, %f", NSTimeZone.localTimeZone, coordinate.latitude, coordinate.longitude);
// → Local Time Zone (America/New_York (EDT) offset -14400 (Daylight)): 40.714000, -74.006000

为了设置地图视图的中心坐标(例如,使用 Mapbox iOS SDK

CLLocationCoordinate2D coordinate = NSTimeZone.localTimeZone.coordinate;
if (CLLocationCoordinate2DIsValid(coordinate)) {
    [self.mapView setCenterCoordinate:coordinate];
}

请确保返回的坐标是有效的,因为可能此类别可能不会为给定时区找到坐标。

有关用法和可用时区的更多信息,请参阅示例项目

安装

手册

NSTimeZone+Coordinate.h/mtimezones.plist 复制到您的项目中。确保 timezones.plist 与您的应用程序捆绑在一起。

注意:此类别不使用 timezones.xml.plist —— 它存在是为了方便进行更改的diff。

CocoaPods

要将此类别与 CocoaPods 集成,请将以下内容添加到您的 Podfile 中

pod 'NSTimeZone-Coordinate'

更新

  1. npm run update — 更新时区子模块并重新生成plist文件。
  2. 提交新的子模块提交哈希值以及二进制和XML plist文件中的更改。