版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
任務1啟動Stage模型下的UIAbility項目3走進Stage模型下的業(yè)務能力開發(fā)任務1啟動Stage模型下的UIAbility本任務使用Stage模型下的UIAbility能力,創(chuàng)建并啟動UIAbility,借助Want通信接口,在UIAbility間跳轉并傳遞數(shù)據(jù),實現(xiàn)同一個設備下兩個UIAbility間的跳轉和傳值。任務描述任務效果圖預覽任務實施0102整理工程資源設定兩個UIAbility的啟動頁面0304在Main_Index頁面中跳轉并傳遞數(shù)據(jù)在目標UIAbility獲取傳遞過來的數(shù)據(jù)01整理工程資源
本任務需要兩個UIAbility,分別是:MainAbility
EntryAbility.ts,Index.etx->Main_Index;SecondAbility,新建Ability生成,新建頁面Second_Index。02設定兩個UIAbility的啟動頁面-1應用啟動文件中驗證UIAbility:02設定兩個UIAbility的啟動頁面-2分別在兩個UIAbility的入口文件中設置每一個UIAbility對應的首頁:02設定兩個UIAbility的啟動頁面-3在配置文件module.json5中驗證啟動的Ability:03在Main_Index頁面中跳轉并傳遞數(shù)據(jù)-1在Main_Index.ets中,需要有UIAbilityConext上下文對象,并組裝Want通信接口中的參數(shù),傳遞關鍵字為msg,值為字符串類型的val,關鍵代碼://跳轉到指定的UIAbility并傳遞字符串類型的值letwant={bundleName:'ject3_task1',//包名abilityName:'SecondAbility',//目標UIAbility名parameters:{//跳轉時傳遞的參數(shù)msg:"有人入侵"http://傳遞參數(shù)的關鍵定為msg,值為字符串類型的val}};//啟動want參數(shù)中指定的UIAbilitythis.context.startAbility(want)03在Main_Index頁面中跳轉并傳遞數(shù)據(jù)-2在Main_Index.ets中,在組件的點擊事件中,進行跳轉。04在目標UIAbility獲取傳遞過來的數(shù)據(jù)-1在目標UIAbility的入口文件SecondAbility.ts中的onCreate()方法,使用globalThis全局對象存儲傳遞過來的want數(shù)據(jù),關鍵代碼:exportdefaultclassSecondAbilityextendsUIAbility{
onCreate(want,launchParam){
//接收UIAbility跳轉時通過Want傳過來的參數(shù)
globalThis.destWant=want;
…
}...}04在目標UIAbility獲取傳遞過來的數(shù)據(jù)-2在目標頁面Second_Index中,導入上下文,在組件的生命周期函數(shù)aboutToAppear()中,通過關鍵字msg獲取傳遞過來的數(shù)據(jù),并在“跳回”按鈕中實現(xiàn)跳轉回MainAbility,關鍵代碼:aboutToAppear(){
//從全局變量globalThis中獲取關鍵字為msg的值
this.val=globalThis.destWant?.parameters?.msg;
}任務1啟動Stage模型下的UIAbility同一個UIAbility內(nèi)部的不同頁面間,跳轉和傳值可以使用頁面路由router模塊或路由容器組件Navigator;當在不同的UIAbility間跳轉并傳值時,需要使用上下文提供的startAbility(want)方法來跳轉,將跳轉相關的參數(shù)設置在want通信接口中。至此,讀者們已經(jīng)能夠?qū)崿F(xiàn)在UIAbility內(nèi)和UIAbility間的跳轉和傳值。任務小結任務2使用首選項實現(xiàn)輕量級數(shù)據(jù)存儲項目3走進Stage模型下的業(yè)務能力開發(fā)任務2使用首選項實現(xiàn)輕量級數(shù)據(jù)存儲本任務使用首選項輕量級數(shù)據(jù)存儲,將記住密碼的勾選狀態(tài)進行保存,當應用下一次啟動后,依據(jù)保存的記住密碼的狀態(tài),更新記住密碼的開關狀態(tài)標志。任務描述任務效果圖預覽任務實施0102整理工程資源封裝首選項工具類0304將首選項實例對象保存為全局對象處理記住密碼標志01整理工程資源
在ets目錄下創(chuàng)建相關的目錄和文件,并將EntryAbility.ts重命令為EntryAbility.ets,以便可以在EntryAbility.ets中導入首選項的工具類。02封裝首選項工具類在工具類PreferencesUtil中,導入首選項,實例化Preferences對象;使用全局對象globalThis.preferences進行鍵值對數(shù)據(jù)的保存和讀取,并通過callback回調(diào)方法將獲取到的值回傳給調(diào)用者。/***首選項工具類*提供保存、讀取鍵值對數(shù)據(jù)的方法*/exportdefaultclassPreferencesUtil{….}03將首選項實例對象保存為全局對象在EntryAbility.ets中導入首選項工具類,實例化工具類對象,在onCreate()生命周期函數(shù)中將Preferences實例對象保存為全局對象globalThis.preferences,保存默認的記住密碼的標志為false。部分代碼如下://將Preferences對象保存到全局
preferences.createPreferences(
this.context,(data)=>{
globalThis.preferences=data
//如果沒有保存過記住密碼標志,則默認保存為false
preferences.saveDefaultFlag();
});04處理記住密碼標志在Index.ets文件中,導入首選項工具類、實例化工具類對象、在組件的生命周期函數(shù)aboutToAppear()中獲取記住密碼標志并將標志賦值給狀態(tài)變量isRememberPass、將開關的狀態(tài)與狀態(tài)變量isRememberPass進行綁定、在開關的事件處理中將開關的實時狀態(tài)值進行保存。
//獲取記住密碼標志
preferences.getFlag((data:boolean)=>{
this.isRememberPass=data…this.isRememberPass=isOn//獲取開關的狀態(tài)preferences.saveFlag(this.isRememberPass)04將記住密碼標志與開關進行綁定在Inde
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度大型會展中心設施維護與運營服務合同3篇
- 2024年進口車購保合同
- 二零二五年度個人及配偶房產(chǎn)抵押消費貸款保證合同3篇
- 2025版金融機構房產(chǎn)抵押借款合同范本2篇
- 2025年度高端會員服務合作協(xié)議書
- 相機基礎知識課程設計
- 2025版旅行攻略主播獨家合作協(xié)議范本3篇
- 2025版車輛租賃合同:含車輛租賃及司機住宿服務2篇
- 二零二五年度企業(yè)定制化兼職招聘代理合同9篇
- 二零二五年度個人土地征收與補償安置協(xié)議書
- 辦公室消防管理制度
- 動火作業(yè)審批表
- 過敏性紫癜課件PPT
- 浙江省紹興市諸暨市2023-2024學年數(shù)學三上期末達標檢測試題含答案
- 腳手架質(zhì)量驗收標準
- 小學思政課《愛國主義教育》
- 中藥材的性狀及真?zhèn)舞b別培訓-課件
- 泵站項目劃分
- 綠化養(yǎng)護工作檢查及整改記錄表
- 新能源發(fā)電技術學習通課后章節(jié)答案期末考試題庫2023年
- GB/T 42752-2023區(qū)塊鏈和分布式記賬技術參考架構
評論
0/150
提交評論