目录

时区

使用场景

全球各国家和地区的经度不同,地方时间也有所不同,因此划分了不同的时区。例如,英国采用0时区,中国采用东8时区,中国时间要比英国快8小时,中国北京中午12:00,对应英国伦敦是凌晨4:00。时区模块可用于获取时区列表,应用可基于该列表实现业务逻辑,如双时钟应用。

从API version 20开始,时区模块还可用于获取时区跳变时间点和偏移量等,时区的跳变逻辑参考夏令时跳变。

接口说明

时区模块关键接口如下表所示,具体API说明详见国际化-I18n。

接口名 描述
getTimeZone(zoneID?: string): TimeZone 获取时区ID对应的时区对象。
getID(): string 获取时区对象的ID。
getDisplayName(locale?: string, isDST?: boolean): string 获取时区对象名称在指定语言下的翻译。
getRawOffset(): number 获取时区的固定偏移量。
getOffset(date?: number): number 获取某一时刻时区对象所表示时区的偏移量。
getAvailableIDs(): Array<string> 获取系统支持的时区ID列表。
getAvailableZoneCityIDs(): Array<string> 获取系统支持的时区城市ID列表。
getCityDisplayName(cityID: string, locale: string): string 获取时区城市名称在指定语言下的翻译。
getTimezoneFromCity(cityID: string): TimeZone 根据城市ID创建对应的时区对象。
getTimezonesByLocation(longitude: number, latitude: number): Array<TimeZone> 根据地理坐标获取所在时区对象的数组。
getZoneRules(): ZoneRules 获取时区跳变规则。
nextTransition(date?: number): ZoneOffsetTransition 获取指定时间的下一个时区跳变对象。
getMilliseconds(): number 获取时区跳变点的时间戳。
getOffsetAfter(): number 获取时区跳变后的偏移量。
getOffsetBefore(): number 获取时区跳变前的偏移量。

开发步骤

[h2]时区接口基本功能

  1. 导入模块。

    import { i18n } from '@kit.LocalizationKit';
  2. 使用场景。