设置用户偏好
使用场景
除区域设置和应用偏好语言设置外,系统还可以设置用户偏好,当前支持是否使用本地数字、是否使用12/24小时制两种偏好。用户偏好设置会保存到系统区域标识及应用偏好语言中,最终体现在用户界面的国际化特性上。
开发步骤
接口具体使用方法和说明请参考setUsingLocalDigit和set24HourClock的API文档。
-
导入模块。
import Intl from '@ohos.intl'; import I18n from '@ohos.i18n'; import { BusinessError } from '@ohos.base';
-
获取应用偏好语言。
try { // 获取应用偏好语言,假设当前偏好语言为 ar let appPreferredLanguage: string = I18n.System.getAppPreferredLanguage(); } catch(error) { let err: BusinessError = error as BusinessError; console.error(`call System.getAppPreferredLanguage failed, error code: ${err.code}, message: ${err.message}.`); }
-
设置应用界面数字。
try { I18n.System.setUsingLocalDigit(true); // 打开本地化数字开关 } catch(error) { let err: BusinessError = error as BusinessError; console.error(`call System.setUsingLocalDigit failed, error code: ${err.code}, message: ${err.message}.`); } let date = new Date(2023, 9, 25); let dateTimeFmt = new Intl.DateTimeFormat(appPreferredLanguage); let result = dateTimeFmt.format(date); // result = "٢٠٢٣/١٠/٢٥"(采用阿语本地数字表示)
-
设置格式化的24小时制。
try { I18n.System.set24HourClock(true); // true表示打开24小时制开关,false表示打开12小时制开关 } catch(error) { let err: BusinessError = error as BusinessError; console.error(`call System.set24HourClock failed, error code: ${err.code}, message: ${err.message}.`); } let date = new Date(2023, 9, 25, 16, 48, 0); let dateTimeFmt = new Intl.DateTimeFormat(appPreferredLanguage, { timeStyle: "medium" }); let result = dateTimeFmt.format(date); // result = "16:48:00"