DialogHub上線OpenHarmony開源社區(qū),高效開發(fā)鴻蒙應(yīng)用彈窗?

作為鴻蒙應(yīng)用開發(fā)者,在使用ArkUI現(xiàn)有能力進(jìn)行彈窗開發(fā)時,總會遇到一些讓人糾結(jié)的交互問題:應(yīng)用內(nèi)進(jìn)行消息提示時,既要求消息內(nèi)容支持圖文混排,又要求彈窗本身不能打斷用戶交互(頁面滑動、頁面點擊、鍵盤輸入等操作);彈窗本身與彈窗蒙層的動畫需要進(jìn)行獨立設(shè)置;彈窗避讓鍵盤需要自定義避讓距離;氣泡提示的箭頭需要進(jìn)行自定義等。開發(fā)者需要開發(fā)很多額外的代碼去解決這些交互問題,但通過“DialogHub”彈窗三方庫,只需要一兩個配置項就可以輕松解決上述問題。

“DialogHub”可高效地解決以下3點問題:1、上文提到的焦點、手勢、動畫等交互問題;2、彈窗需要與UI進(jìn)行解耦。3、彈窗需要具備復(fù)用能力。接下來以具體示例說明:

“DialogHub”提供了多種配置選項解決彈窗的交互問題。例如,通過setConfig接口的passThroughGesture屬性解決手勢透傳問題;requestFocusWhenShow屬性解決焦點搶占問題;通過setAnimation接口的customMaskAnimation解決遮罩動畫自定義的問題:

DialogHub上線OpenHarmony開源社區(qū),高效開發(fā)鴻蒙應(yīng)用彈窗?

“DialogHub”支持UI解耦的彈窗能力。例如,在全局監(jiān)聽里創(chuàng)建彈窗(以氣泡彈窗為例),通過鏈?zhǔn)秸{(diào)用的方式綁定目標(biāo)組件并彈出:

DialogHub上線OpenHarmony開源社區(qū),高效開發(fā)鴻蒙應(yīng)用彈窗?

“DialogHub”提供彈窗模板能力,便于開發(fā)者實現(xiàn)彈窗復(fù)用。以圖文混排的消息提示框為例:

步驟一:使用“DialogHub”的createToastTemplate、register接口創(chuàng)建一個符合UX定義的消息提示框模板:

DialogHub上線OpenHarmony開源社區(qū),高效開發(fā)鴻蒙應(yīng)用彈窗?

步驟二:使用“DialogHub”的getToastTemplate接口獲取定義好的模板并彈出

DialogHub上線OpenHarmony開源社區(qū),高效開發(fā)鴻蒙應(yīng)用彈窗?

在實際應(yīng)用中,“DialogHub”的能力也得到了開發(fā)者的高度認(rèn)可。據(jù)某頭部App開發(fā)者反饋:“DialogHub”對系統(tǒng)彈窗進(jìn)行了統(tǒng)一封裝,鏈?zhǔn)秸{(diào)用學(xué)習(xí)成本低,一行代碼就能完成彈窗屬性配置,代碼更加簡潔清晰。

“DialogHub”的推出為開發(fā)者提供了一個開箱即用的彈窗管理解決方案,幫助開發(fā)者更高效地實現(xiàn)各種場景下的彈窗功能,顯著降低學(xué)習(xí)成本與開發(fā)成本。目前,“DialogHub”已開源至OpenHarmony三方庫中心倉以及Gitee平臺。

DialogHub上線OpenHarmony開源社區(qū),高效開發(fā)鴻蒙應(yīng)用彈窗?
DialogHub上線OpenHarmony開源社區(qū),高效開發(fā)鴻蒙應(yīng)用彈窗?

開發(fā)者可訪問“OpenHarmony官網(wǎng)”,點擊“開發(fā)者”——>“三方庫中心倉”——>搜索“DialogHub”;或登錄“Gitee官網(wǎng)”,首頁搜索“DialogHub”,快速下載集成,并參與代碼貢獻(xiàn)與問題反饋。共同提升鴻蒙應(yīng)用的性能與體驗。

未來華為也將持續(xù)攜手生態(tài)伙伴共建創(chuàng)新,面向底座技術(shù)、通用能力、垂類行業(yè)等場景推出系列開發(fā)者場景化解決方案,不斷提升鴻蒙應(yīng)用的創(chuàng)新體驗和開發(fā)效率,與廣大開發(fā)者共建繁榮的鴻蒙生態(tài)。

更多關(guān)于“DialogHub”的信息和使用指南,請訪問:HarmonyOS開發(fā)者官網(wǎng)

本文轉(zhuǎn)載自:,不代表科技訊之立場。原文鏈接:https://www.sohu.com/a/878823554_121677515

陳晨陳晨管理團(tuán)隊

相關(guān)推薦

發(fā)表回復(fù)

登錄后才能評論