對于不同類型的智能設備,用戶可能有不同的交互方式,如通過觸摸屏、鼠標、觸控板等。如果針對不同的交互方式單獨做適配,會增加開發工作量同時產生大量重復代碼。為解決這一問題,我們統一了各種交互方式的API,即實現了 交互歸一 。
基礎輸入
常見的基礎輸入方式及其在各輸入設備上的表現如下圖所示。
基礎輸入對應的開發接口,以及當前支持情況如下表所示。
開發前請熟悉鴻蒙開發指導文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
輸入 | 開發接口 | 觸控屏 | 觸控板 | 鼠標 |
---|---|---|---|---|
懸浮 | [onHover] | NA | √ | √ |
點擊 | [onClick] | √ | √ | √ |
雙擊 | [TapGesture] | √ | √ | √ |
長按 | [LongPressGesture] | √ | × | √ |
上下文菜單 | [ContentMenu] | √ | √ | √ |
拖拽 | [Drag] | √ | √ | √ |
輕掃 | [SwipeGesture] | √ | √ | √ |
滾動及平移 | [PanGesture] | √ | √ | √ |
縮放 | [PinchGesture] | √ | √ | √ |
旋轉 | [RotationGesture] | √ | √ | NA |
說明:
- 點擊事件(onClick)其實是點擊手勢(TapGesture)的一個特殊場景(單指單次點擊)。該場景使用的非常廣泛,為了方便開發者使用及符合傳統開發習慣,所以專門提供了開發接口。
- 觸控板支持長按輸入的功能正在開發中。
拖拽事件
拖拽是應用開發中經常碰到的場景。拖拽發生在兩個組件之間,它不是簡單的單次輸入,而是一個”過程”,通常包含如下步驟(以將組件A拖拽到組件B中為例)。
- 長按或點擊組件A,觸發拖拽。
- 保持按壓或點擊,持續將組件A向組件B拖拽。
- 抵達組件B中,釋放按壓點擊,完成拖拽。
- 也可以在未抵達組件B的中途,釋放按壓點擊,取消拖拽。
一個完整的拖拽事件,包含多個拖拽子事件,如下表所示(請訪問拖拽事件了解詳細用法)。當前觸控屏和鼠標的拖拽事件已經實現”交互歸一”,對手寫筆的支持正在開發中。
名稱 | 功能描述HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿 |
---|---|
onDragStart | 綁定A組件,觸控屏長按/鼠標左鍵按下后移動觸發 |
onDragEnter | 綁定B組件,觸控屏手指、鼠標移動進入B組件瞬間觸發 |
onDragMove | 綁定B組件,觸控屏手指、鼠標在B組件內移動觸發 |
onDragLeave | 綁定B組件,觸控屏手指、鼠標移動退出B組件瞬間觸發 |
onDrop | 綁定B組件,在B組件內,觸控屏手指抬起、鼠標左鍵松開時觸發 |
審核編輯 黃宇
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
鴻蒙
+關注
關注
57文章
2371瀏覽量
42910 -
鴻蒙OS
+關注
關注
0文章
189瀏覽量
4462
發布評論請先 登錄
相關推薦
鴻蒙OS開發:典型頁面場景【一次開發,多端部署】(功能開發)
應用開發至少包含兩部分工作: UI頁面開發和底層功能開發(部分需要聯網的應用還會涉及服務端開發)。前面章節介紹了如何解決頁面適配的問題,本章節主要介紹應用如何解決設備系統能力差異的兼容
鴻蒙OS開發:典型頁面場景【一次開發,多端部署】(交互歸一)
對于不同類型的智能設備,用戶可能有不同的交互方式,如通過觸摸屏、鼠標、觸控板等。如果針對不同的交互方式單獨做適配,會增加開發工作量同時產生大量重復代碼。為解決這一問題,我們統
鴻蒙OS開發:典型頁面場景【一次開發,多端部署】實戰(音樂專輯頁2)
本示例使用[一次開發多端部署]中介紹的自適應布局能力和響應式布局能力進行多設備(或多窗口尺寸)適配,保證應用在不同設備或不同窗口尺寸下可以正常顯示。
鴻蒙OS開發:【一次開發,多端部署】(簡介)
隨著終端設備形態日益多樣化,分布式技術逐漸打破單一硬件邊界,一個應用或服務,可以在不同的硬件設備之間隨意調用、互助共享,讓用戶享受無縫的全場景體驗。而作為應用開發者,廣泛的設備類型也能為應用帶來廣大
評論