1# 设置用户偏好(仅对系统应用开放) 2 3## 使用场景 4 5除区域设置和应用偏好语言设置外,系统还可以设置用户偏好,当前支持是否使用本地数字、是否使用12/24小时制两种偏好。用户偏好设置会保存到系统区域标识及应用偏好语言中,最终体现在用户界面的国际化特性上。 6 7## 开发步骤 8 9接口具体使用方法和说明请参考[setUsingLocalDigit](../reference/apis-localization-kit/js-apis-i18n-sys.md#setusinglocaldigit9)和[set24HourClock](../reference/apis-localization-kit/js-apis-i18n-sys.md#set24hourclock9)的API文档。 10 11 121. 导入模块。 13 ```ts 14 import Intl from '@ohos.intl'; 15 import I18n from '@ohos.i18n'; 16 import { BusinessError } from '@ohos.base'; 17 ``` 18 192. 获取应用偏好语言。 20 ```ts 21 try { 22 // 获取应用偏好语言,假设当前偏好语言为 ar 23 let appPreferredLanguage: string = I18n.System.getAppPreferredLanguage(); 24 } catch(error) { 25 let err: BusinessError = error as BusinessError; 26 console.error(`call System.getAppPreferredLanguage failed, error code: ${err.code}, message: ${err.message}.`); 27 } 28 ``` 29 303. 设置应用界面数字。 31 ```ts 32 try { 33 I18n.System.setUsingLocalDigit(true); // 打开本地化数字开关 34 } catch(error) { 35 let err: BusinessError = error as BusinessError; 36 console.error(`call System.setUsingLocalDigit failed, error code: ${err.code}, message: ${err.message}.`); 37 } 38 let date = new Date(2023, 9, 25); 39 let dateTimeFmt = new Intl.DateTimeFormat(appPreferredLanguage); 40 let result = dateTimeFmt.format(date); // result = "٢٠٢٣/١٠/٢٥"(采用阿语本地数字表示) 41 ``` 42 434. 设置格式化的24小时制。 44 ```ts 45 try { 46 I18n.System.set24HourClock(true); // true表示打开24小时制开关,false表示打开12小时制开关 47 } catch(error) { 48 let err: BusinessError = error as BusinessError; 49 console.error(`call System.set24HourClock failed, error code: ${err.code}, message: ${err.message}.`); 50 } 51 let date = new Date(2023, 9, 25, 16, 48, 0); 52 let dateTimeFmt = new Intl.DateTimeFormat(appPreferredLanguage, { timeStyle: "medium" }); 53 let result = dateTimeFmt.format(date); // result = "16:48:00" 54 ``` 55