作為鴻蒙應(yīng)用開發(fā)者,在使用ArkUI現(xiàn)有能力進(jìn)行彈窗開發(fā)時(shí),總會(huì)遇到一些讓人糾結(jié)的交互問(wèn)題:應(yīng)用內(nèi)進(jìn)行消息提示時(shí),既要求消息內(nèi)容支持圖文混排,又要求彈窗本身不能打斷用戶交互(頁(yè)面滑動(dòng)、頁(yè)面點(diǎn)擊、鍵盤輸入等操作);彈窗本身與彈窗蒙層的動(dòng)畫需要進(jìn)行獨(dú)立設(shè)置;彈窗避讓鍵盤需要自定義避讓距離;氣泡提示的箭頭需要進(jìn)行自定義等。開發(fā)者需要開發(fā)很多額外的代碼去解決這些交互問(wèn)題,但通過(guò)“DialogHub”彈窗三方庫(kù),只需要一兩個(gè)配置項(xiàng)就可以輕松解決上述問(wèn)題。
“DialogHub”可高效地解決以下3點(diǎn)問(wèn)題:1、上文提到的焦點(diǎn)、手勢(shì)、動(dòng)畫等交互問(wèn)題;2、彈窗需要與UI進(jìn)行解耦。3、彈窗需要具備復(fù)用能力。接下來(lái)以具體示例說(shuō)明:
“DialogHub”提供了多種配置選項(xiàng)解決彈窗的交互問(wèn)題。例如,通過(guò)setConfig接口的passThroughGesture屬性解決手勢(shì)透?jìng)鲉?wèn)題;requestFocusWhenShow屬性解決焦點(diǎn)搶占問(wèn)題;通過(guò)setAnimation接口的customMaskAnimation解決遮罩動(dòng)畫自定義的問(wèn)題:
“DialogHub”支持UI解耦的彈窗能力。例如,在全局監(jiān)聽里創(chuàng)建彈窗(以氣泡彈窗為例),通過(guò)鏈?zhǔn)秸{(diào)用的方式綁定目標(biāo)組件并彈出:
“DialogHub”提供彈窗模板能力,便于開發(fā)者實(shí)現(xiàn)彈窗復(fù)用。以圖文混排的消息提示框?yàn)槔?/p>
步驟一:使用“DialogHub”的createToastTemplate、register接口創(chuàng)建一個(gè)符合UX定義的消息提示框模板:
步驟二:使用“DialogHub”的getToastTemplate接口獲取定義好的模板并彈出
在實(shí)際應(yīng)用中,“DialogHub”的能力也得到了開發(fā)者的高度認(rèn)可。據(jù)某頭部App開發(fā)者反饋:“DialogHub”對(duì)系統(tǒng)彈窗進(jìn)行了統(tǒng)一封裝,鏈?zhǔn)秸{(diào)用學(xué)習(xí)成本低,一行代碼就能完成彈窗屬性配置,代碼更加簡(jiǎn)潔清晰。
“DialogHub”的推出為開發(fā)者提供了一個(gè)開箱即用的彈窗管理解決方案,幫助開發(fā)者更高效地實(shí)現(xiàn)各種場(chǎng)景下的彈窗功能,顯著降低學(xué)習(xí)成本與開發(fā)成本。目前,“DialogHub”已開源至OpenHarmony三方庫(kù)中心倉(cāng)以及Gitee平臺(tái)。
開發(fā)者可訪問(wèn)“OpenHarmony官網(wǎng)”,點(diǎn)擊“開發(fā)者”——>“三方庫(kù)中心倉(cāng)”——>搜索“DialogHub”;或登錄“Gitee官網(wǎng)”,首頁(yè)搜索“DialogHub”,快速下載集成,并參與代碼貢獻(xiàn)與問(wèn)題反饋。共同提升鴻蒙應(yīng)用的性能與體驗(yàn)。
未來(lái)華為也將持續(xù)攜手生態(tài)伙伴共建創(chuàng)新,面向底座技術(shù)、通用能力、垂類行業(yè)等場(chǎng)景推出系列開發(fā)者場(chǎng)景化解決方案,不斷提升鴻蒙應(yīng)用的創(chuàng)新體驗(yàn)和開發(fā)效率,與廣大開發(fā)者共建繁榮的鴻蒙生態(tài)。
更多關(guān)于“DialogHub”的信息和使用指南,請(qǐng)?jiān)L問(wèn):
https://developer.huawei.com/consumer/cn/doc/best-practices/bpta-hadss_DialogHub
https://gitee.com/hadss/DialogHub/tree/V1.0.0-rc.3/
https://ohpm.openharmony.cn/#/cn/detail/@hadss%2FDialogHub
免責(zé)聲明:市場(chǎng)有風(fēng)險(xiǎn),選擇需謹(jǐn)慎!此文僅供參考,不作買賣依據(jù)。
Copyright 2015-2022 安卓網(wǎng)版權(quán)所有 備案號(hào):豫ICP備2021032478號(hào)-23 聯(lián)系郵箱:89 718 09@qq.com