From 0ad5fb91d748af64c2c4f2fbe9c5443d911203a3 Mon Sep 17 00:00:00 2001 From: ly Date: Tue, 6 May 2025 17:02:38 +0800 Subject: [PATCH 1/2] =?UTF-8?q?fix:=20=E5=BA=9F=E5=BC=83API=E6=9B=BF?= =?UTF-8?q?=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/src/main/ets/util/ResourceUtil.ets | 17 ++++++++++------- entry/src/main/ets/pages/AddInformationView.ets | 10 ++++++---- .../src/main/ets/pages/AddKeyValuePairView.ets | 10 ++++++---- entry/src/main/ets/pages/AddStringView.ets | 10 ++++++---- entry/src/main/ets/pages/Index.ets | 12 ++++++++---- .../main/ets/capabilities/PlainArrayView.ets | 6 +++--- .../src/main/ets/capabilities/Uri.ets | 4 +++- .../src/main/ets/components/ColumnOperation.ets | 4 +++- .../src/main/ets/components/GridOperation.ets | 4 +++- .../ets/components/utilcomponents/LRUCache.ets | 7 +++++++ .../utilcomponents/scopehelper/SleepView.ets | 7 ++++--- .../utilcomponents/scopehelper/TempView.ets | 5 +++-- .../src/main/ets/util/LRUCacheUtil.ets | 8 +++++++- .../src/main/ets/menulist/MenuList.ets | 4 +++- 14 files changed, 72 insertions(+), 36 deletions(-) diff --git a/common/src/main/ets/util/ResourceUtil.ets b/common/src/main/ets/util/ResourceUtil.ets index 4fad357..9e21099 100644 --- a/common/src/main/ets/util/ResourceUtil.ets +++ b/common/src/main/ets/util/ResourceUtil.ets @@ -14,16 +14,19 @@ */ import { common } from '@kit.AbilityKit'; -import { router } from '@kit.ArkUI'; -export async function getStringArray(resource: Resource): Promise> { - let context = getContext() as common.UIAbilityContext; +let uiContext:UIContext + +export async function getStringArray(resource: Resource, UIContext: UIContext): Promise> { + uiContext = UIContext + + let context = UIContext.getHostContext() as common.UIAbilityContext; let menuList: Array = await context.resourceManager.getStringArrayValue(resource); return menuList; } export function getString(resource: Resource): string { - let context = getContext() as common.UIAbilityContext; + let context = uiContext.getHostContext() as common.UIAbilityContext; return context.resourceManager.getStringSync(resource); } @@ -87,18 +90,18 @@ function addAction(title: string) { case getString($r('app.string.queue')): case getString($r('app.string.stack')): case getString($r('app.string.array_list')): - router.pushUrl({ url: 'pages/AddInformationView', params: { 'title': title } }) + uiContext.getRouter().pushUrl({ url: 'pages/AddInformationView', params: { 'title': title } }) break; case getString($r('app.string.hash_map')): case getString($r('app.string.light_weight_map')): case getString($r('app.string.plain_array')): case getString($r('app.string.tree_map')): - router.pushUrl({ url: 'pages/AddKeyValuePairView', params: { 'title': title } }) + uiContext.getRouter().pushUrl({ url: 'pages/AddKeyValuePairView', params: { 'title': title } }) break; case getString($r('app.string.hash_set')): case getString($r('app.string.light_weight_set')): case getString($r('app.string.tree_set')): - router.pushUrl({ url: 'pages/AddStringView', params: { 'title': title } }) + uiContext.getRouter().pushUrl({ url: 'pages/AddStringView', params: { 'title': title } }) break; default: break; diff --git a/entry/src/main/ets/pages/AddInformationView.ets b/entry/src/main/ets/pages/AddInformationView.ets index 75b6557..e734150 100644 --- a/entry/src/main/ets/pages/AddInformationView.ets +++ b/entry/src/main/ets/pages/AddInformationView.ets @@ -13,7 +13,6 @@ * limitations under the License. */ -import { router } from '@kit.ArkUI'; import { emitter } from '@kit.BasicServicesKit'; import { Constant, Information } from '@ohos/capabilities'; import { getString } from '@ohos/common'; @@ -90,6 +89,9 @@ struct AgePickDialog { @Entry @Component export struct AddInformationView { + UIContext: UIContext = this.getUIContext() + Router = this.UIContext.getRouter() + @State information: Information = new Information('', 0, '', true) private dialogController: CustomDialogController = new CustomDialogController({ builder: AgePickDialog({ @@ -103,7 +105,7 @@ export struct AddInformationView { @State flag: string = ''; aboutToAppear() { - let tem: string = (router.getParams() as Record)['title'] as string; + let tem: string = (this.Router.getParams() as Record)['title'] as string; if (!tem) { return; } @@ -123,7 +125,7 @@ export struct AddInformationView { .aspectRatio(1) .padding({ left: 24 }) .onClick(() => { - router.back(); + this.Router.back(); }) Text($r('app.string.add_new_contact')) @@ -184,7 +186,7 @@ export struct AddInformationView { }; emitter.emit(event, eventData); - router.back(); + this.Router.back(); }) } diff --git a/entry/src/main/ets/pages/AddKeyValuePairView.ets b/entry/src/main/ets/pages/AddKeyValuePairView.ets index 5021176..edee42c 100644 --- a/entry/src/main/ets/pages/AddKeyValuePairView.ets +++ b/entry/src/main/ets/pages/AddKeyValuePairView.ets @@ -13,7 +13,6 @@ * limitations under the License. */ -import { router } from '@kit.ArkUI'; import { emitter } from '@kit.BasicServicesKit'; import { Constant, KeyValuePair } from '@ohos/capabilities'; import { getString } from '@ohos/common'; @@ -21,12 +20,15 @@ import { getString } from '@ohos/common'; @Entry @Component export struct AddKeyValueView { + UIContext: UIContext = this.getUIContext() + Router = this.UIContext.getRouter() + @State keyValuePair: KeyValuePair = new KeyValuePair('', '') @State title: string = ''; @State flag: string = ''; aboutToAppear() { - let tem: string = (router.getParams() as Record)['title'] as string; + let tem: string = (this.Router.getParams() as Record)['title'] as string; if (!tem) { return; } @@ -50,7 +52,7 @@ export struct AddKeyValueView { .aspectRatio(1) .padding({ left: 24 }) .onClick(() => { - router.back(); + this.Router.back(); }) Text(this.title) @@ -103,7 +105,7 @@ export struct AddKeyValueView { }; emitter.emit(event, eventData); - router.back(); + this.Router.back(); }) } .width('100%') diff --git a/entry/src/main/ets/pages/AddStringView.ets b/entry/src/main/ets/pages/AddStringView.ets index ef95e8a..2a215df 100644 --- a/entry/src/main/ets/pages/AddStringView.ets +++ b/entry/src/main/ets/pages/AddStringView.ets @@ -13,7 +13,6 @@ * limitations under the License. */ -import { router } from '@kit.ArkUI'; import { emitter } from '@kit.BasicServicesKit'; import { getString } from '@ohos/common'; import { Constant } from '@ohos/capabilities'; @@ -21,12 +20,15 @@ import { Constant } from '@ohos/capabilities'; @Entry @Component export struct AddKeyValueView { + UIContext: UIContext = this.getUIContext() + Router = this.UIContext.getRouter() + @State value: string = '' @State title: string = ''; @State flag: string = ''; aboutToAppear() { - let tem: string = (router.getParams() as Record)['title'] as string; + let tem: string = (this.Router.getParams() as Record)['title'] as string; if (!tem) { return; } @@ -51,7 +53,7 @@ export struct AddKeyValueView { .aspectRatio(1) .padding({ left: 24 }) .onClick(() => { - router.back(); + this.Router.back(); }) Text(this.title) @@ -98,7 +100,7 @@ export struct AddKeyValueView { }; emitter.emit(event, eventData); - router.back(); + this.Router.back(); }) } .width('100%') diff --git a/entry/src/main/ets/pages/Index.ets b/entry/src/main/ets/pages/Index.ets index 1d208a5..a7d4f7f 100644 --- a/entry/src/main/ets/pages/Index.ets +++ b/entry/src/main/ets/pages/Index.ets @@ -13,6 +13,7 @@ * limitations under the License. */ +import { common } from '@kit.AbilityKit'; import { router } from '@kit.ArkUI'; import { MenuList } from '@ohos/menuitems'; import { getString, logger } from '@ohos/common'; @@ -22,13 +23,16 @@ const TAG: string = 'Index'; @Entry @Component struct Index { + UIContext = this.getUIContext() + private context: common.UIAbilityContext = this.UIContext.getHostContext() as common.UIAbilityContext; + @StorageProp('windowWidth') windowWidth: number = 300; @StorageProp('isSplitMode') isSplitMode: boolean = false; @StorageLink('pathStack') pathStack: NavPathStack = new NavPathStack(); @State title: string = ''; aboutToAppear() { - this.title = getContext().resourceManager.getStringSync($r('app.string.lable_name').id); + this.title = this.context.resourceManager.getStringSync($r('app.string.lable_name').id); } build() { @@ -47,18 +51,18 @@ struct Index { case getString($r('app.string.queue')): case getString($r('app.string.stack')): case getString($r('app.string.array_list')): - router.pushUrl({ url: 'pages/AddInformationView', params: { 'title': title } }) + this.UIContext.getRouter().pushUrl({ url: 'pages/AddInformationView', params: { 'title': title } }) break; case getString($r('app.string.hash_map')): case getString($r('app.string.light_weight_map')): case getString($r('app.string.plain_array')): case getString($r('app.string.tree_map')): - router.pushUrl({ url: 'pages/AddKeyValuePairView', params: { 'title': title } }) + this.UIContext.getRouter().pushUrl({ url: 'pages/AddKeyValuePairView', params: { 'title': title } }) break; case getString($r('app.string.hash_set')): case getString($r('app.string.light_weight_set')): case getString($r('app.string.tree_set')): - router.pushUrl({ url: 'pages/AddStringView', params: { 'title': title } }) + this.UIContext.getRouter().pushUrl({ url: 'pages/AddStringView', params: { 'title': title } }) break; } } diff --git a/feature/capabilities/src/main/ets/capabilities/PlainArrayView.ets b/feature/capabilities/src/main/ets/capabilities/PlainArrayView.ets index 13ce173..dcf350d 100644 --- a/feature/capabilities/src/main/ets/capabilities/PlainArrayView.ets +++ b/feature/capabilities/src/main/ets/capabilities/PlainArrayView.ets @@ -14,7 +14,6 @@ */ import { emitter } from '@kit.BasicServicesKit'; -import { promptAction } from '@kit.ArkUI'; import { customTitle, EmptyPage } from '@ohos/common'; import { KeyValuePair } from '../model/KeyValuePair'; import { PlainArrayDataSource } from '../components/plainarraycomponents/PlainArrayDataSource'; @@ -26,7 +25,6 @@ const isNaturalNumber = (str: string): boolean => { let regExp: RegExp = new RegExp('^\\d+$'); return regExp.test(str); }; - @Builder export function PlainArrayViewBuilder() { PlainArrayView() @@ -34,6 +32,8 @@ export function PlainArrayViewBuilder() { @Component export struct PlainArrayView { + UIContext: UIContext = this.getUIContext() + @State dataSource: PlainArrayDataSource = new PlainArrayDataSource(); @State totalCount: number = MIN_LENGTH; @StorageLink('selectedLabel') selectedLabel: string = ''; @@ -46,7 +46,7 @@ export struct PlainArrayView { this.dataSource.addData(eventData.data as KeyValuePair); this.totalCount = this.dataSource.totalCount(); } else { - promptAction.showToast({ message: $r('app.string.key_limit') }); + this.UIContext.getPromptAction().showToast({ message: $r('app.string.key_limit') }); } }); } diff --git a/feature/capabilities/src/main/ets/capabilities/Uri.ets b/feature/capabilities/src/main/ets/capabilities/Uri.ets index 855b8ea..8774a00 100644 --- a/feature/capabilities/src/main/ets/capabilities/Uri.ets +++ b/feature/capabilities/src/main/ets/capabilities/Uri.ets @@ -25,6 +25,8 @@ export function UriBuilder() { @Component export struct Uri { + UIContext: UIContext = this.getUIContext() + @State output: string = 'https://username:password@host:8080/directory/file?foo=1&bar=2#fragment'; @State URI: uri.URI = new uri.URI(this.output); @State host: string = ''; @@ -38,7 +40,7 @@ export struct Uri { UriResolution() { if (this.output.indexOf('://') === -1) { - promptAction.showToast({ + this.UIContext.getPromptAction().showToast({ message: 'Please enter a correct URI.', duration: 3000 }); diff --git a/feature/capabilities/src/main/ets/components/ColumnOperation.ets b/feature/capabilities/src/main/ets/components/ColumnOperation.ets index 8477daa..c52f559 100644 --- a/feature/capabilities/src/main/ets/components/ColumnOperation.ets +++ b/feature/capabilities/src/main/ets/components/ColumnOperation.ets @@ -17,6 +17,8 @@ import { getStringArray } from '@ohos/common'; @Component export struct ColumnOperation { + UIContext: UIContext = this.getUIContext() + @State operationSource: string[] = []; public operationRes: Resource | undefined = undefined; public doOperation: (index: number) => void = () => {}; @@ -48,7 +50,7 @@ export struct ColumnOperation { async aboutToAppear() { if (this.operationRes) { - let menuList = await getStringArray(this.operationRes); + let menuList = await getStringArray(this.operationRes, this.UIContext); this.operationSource = menuList; } } diff --git a/feature/capabilities/src/main/ets/components/GridOperation.ets b/feature/capabilities/src/main/ets/components/GridOperation.ets index 7281bf6..bcf320a 100644 --- a/feature/capabilities/src/main/ets/components/GridOperation.ets +++ b/feature/capabilities/src/main/ets/components/GridOperation.ets @@ -17,6 +17,8 @@ import { getStringArray } from '@ohos/common'; @Component export struct GridOperation { + UIContext: UIContext = this.getUIContext() + @State operationSource: string[] = []; public operationRes: Resource | undefined = undefined; public doOperation: (index: number) => void = () => {}; @@ -53,7 +55,7 @@ export struct GridOperation { async aboutToAppear() { if (this.operationRes) { - let menuList = await getStringArray(this.operationRes); + let menuList = await getStringArray(this.operationRes, this.UIContext); this.operationSource = menuList; } } diff --git a/feature/capabilities/src/main/ets/components/utilcomponents/LRUCache.ets b/feature/capabilities/src/main/ets/components/utilcomponents/LRUCache.ets index 2602617..670b519 100644 --- a/feature/capabilities/src/main/ets/components/utilcomponents/LRUCache.ets +++ b/feature/capabilities/src/main/ets/components/utilcomponents/LRUCache.ets @@ -21,6 +21,7 @@ import { getAllKeyValues, getCacheString, initLRUCache, + initUtilLRUData, lruBuffer, operationLog, putKeyValue, @@ -41,6 +42,12 @@ export struct LRUCache { public pathStack: NavPathStack = new NavPathStack(); private isGet: boolean = true; + aboutToAppear(): void { + let UIContext = this.getUIContext() + + initUtilLRUData(UIContext) + } + build() { NavDestination() { Scroll() { diff --git a/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/SleepView.ets b/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/SleepView.ets index 1bd7523..d2afc5b 100644 --- a/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/SleepView.ets +++ b/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/SleepView.ets @@ -13,7 +13,6 @@ * limitations under the License. */ -import { promptAction } from '@kit.ArkUI'; import { util } from '@kit.ArkTS'; import { getString } from '@ohos/common'; import { InputItem } from './InputItem'; @@ -25,6 +24,8 @@ const SLEEP_TIME_LONG: number = 10; @Component export struct SleepView { + UIContext = this.getUIContext() + @State shortTime: number = ZERO; @State longTime: number = ZERO; @@ -75,11 +76,11 @@ export struct SleepView { sleepRange() { if (this.shortTime <= ZERO || this.longTime <= ZERO) { - promptAction.showToast({ message: $r("app.string.scope_sleep_tips") }); + this.UIContext.getPromptAction().showToast({ message: $r("app.string.scope_sleep_tips") }); return; } if (this.longTime <= this.shortTime) { - promptAction.showToast({ message: $r("app.string.scope_sleep_tips_less") }); + this.UIContext.getPromptAction().showToast({ message: $r("app.string.scope_sleep_tips_less") }); return; } let timeLower = new ScopeNumber(SLEEP_TIME_SHORT); diff --git a/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/TempView.ets b/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/TempView.ets index ac56c89..5ac2e7f 100644 --- a/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/TempView.ets +++ b/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/TempView.ets @@ -13,7 +13,6 @@ * limitations under the License. */ -import { promptAction } from '@kit.ArkUI'; import { util } from '@kit.ArkTS'; import { getString } from '@ohos/common'; import { InputItem } from './InputItem'; @@ -25,6 +24,8 @@ const TEMPERATURE_MAX: number = 37.2; @Component export struct TempView { + UIContext = this.getUIContext() + @State tempMorning: number = ZERO; @State tempNoon: number = ZERO; @State tempNight: number = ZERO; @@ -87,7 +88,7 @@ export struct TempView { tempRange() { if (this.tempMorning <= ZERO || this.tempNoon <= ZERO || this.tempNight <= ZERO) { - promptAction.showToast({ message: $r("app.string.scope_temp_tips") }); + this.UIContext.getPromptAction().showToast({ message: $r("app.string.scope_temp_tips") }); return; } let arr = [this.tempMorning, this.tempNoon, this.tempNight].sort(); diff --git a/feature/capabilities/src/main/ets/util/LRUCacheUtil.ets b/feature/capabilities/src/main/ets/util/LRUCacheUtil.ets index 759145c..cf2b0d7 100644 --- a/feature/capabilities/src/main/ets/util/LRUCacheUtil.ets +++ b/feature/capabilities/src/main/ets/util/LRUCacheUtil.ets @@ -18,6 +18,12 @@ import { util } from '@kit.ArkTS'; export let lruBuffer: util.LRUCache = new util.LRUCache(); +let uiContext: UIContext + +export function initUtilLRUData(UIContext: UIContext) { + uiContext = UIContext +} + export function initLRUCache(): string { lruBuffer = new util.LRUCache(); return getString($r('app.string.create_lru_cache')); @@ -57,7 +63,7 @@ export function operationLog(): string { } export function getString(resource: Resource) { - let context = getContext() as common.UIAbilityContext; + let context = uiContext.getHostContext() as common.UIAbilityContext; let resultStr = context.resourceManager.getStringSync(resource); return resultStr; } diff --git a/feature/menuitems/src/main/ets/menulist/MenuList.ets b/feature/menuitems/src/main/ets/menulist/MenuList.ets index dcedb15..1579832 100644 --- a/feature/menuitems/src/main/ets/menulist/MenuList.ets +++ b/feature/menuitems/src/main/ets/menulist/MenuList.ets @@ -18,6 +18,8 @@ import { MenuNavRouter } from '../components/MenuNavRouter'; @Component export struct MenuList { + UIContext: UIContext = this.getUIContext() + @State menuListData: Array = []; public menuList: Resource | undefined = undefined; public addAction?: (title: string) => void; @@ -45,7 +47,7 @@ export struct MenuList { getData = async () => { if (this.menuList) { - this.menuListData = await getStringArray(this.menuList); + this.menuListData = await getStringArray(this.menuList, this.UIContext); } } } \ No newline at end of file -- Gitee From 7cf34a1efd1ecd33bd6ec23413c561ad70f91306 Mon Sep 17 00:00:00 2001 From: ly Date: Thu, 8 May 2025 09:15:34 +0800 Subject: [PATCH 2/2] =?UTF-8?q?fix:=20=E5=BA=9F=E5=BC=83API=E6=9B=BF?= =?UTF-8?q?=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/ets/components/utilcomponents/ScopeHelper.ets | 4 +++- .../ets/components/utilcomponents/scopehelper/SleepView.ets | 2 +- .../ets/components/utilcomponents/scopehelper/TempView.ets | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/feature/capabilities/src/main/ets/components/utilcomponents/ScopeHelper.ets b/feature/capabilities/src/main/ets/components/utilcomponents/ScopeHelper.ets index 0c9e130..ea8b9bc 100644 --- a/feature/capabilities/src/main/ets/components/utilcomponents/ScopeHelper.ets +++ b/feature/capabilities/src/main/ets/components/utilcomponents/ScopeHelper.ets @@ -30,6 +30,8 @@ export function ScopeHelperBuilder() { @Preview @Component export struct ScopeHelper { + UIContext = this.getUIContext() + @State age: number = 0; @State tempMorning: number = 0; @State tempNoon: number = 1; @@ -95,7 +97,7 @@ export struct ScopeHelper { } dialog(title: ResourceStr, message: ResourceStr, value: ResourceStr) { - AlertDialog.show( + this.UIContext.showAlertDialog( { title: title, message: message, diff --git a/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/SleepView.ets b/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/SleepView.ets index d2afc5b..eb6e938 100644 --- a/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/SleepView.ets +++ b/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/SleepView.ets @@ -101,7 +101,7 @@ export struct SleepView { } catch { message += getString($r('app.string.empty')); } - AlertDialog.show( + this.UIContext.showAlertDialog( { title: $r('app.string.sleep_analyse'), message: message, diff --git a/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/TempView.ets b/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/TempView.ets index 5ac2e7f..f75f0b9 100644 --- a/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/TempView.ets +++ b/feature/capabilities/src/main/ets/components/utilcomponents/scopehelper/TempView.ets @@ -73,7 +73,7 @@ export struct TempView { } alertDialog(title: ResourceStr, message: ResourceStr, value: ResourceStr) { - AlertDialog.show( + this.UIContext.showAlertDialog( { title: title, message: message, -- Gitee