電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>嵌入式開發(fā)>Android平臺(tái)觸摸響應(yīng)的實(shí)現(xiàn)和優(yōu)化

Android平臺(tái)觸摸響應(yīng)的實(shí)現(xiàn)和優(yōu)化

2017-10-26 | rar | 0.4 MB | 次下載 | 1積分

資料介紹

 近些年來,隨著3G 網(wǎng)絡(luò)的大規(guī)模建設(shè)和智能手機(jī)的迅速普及,移動(dòng)互聯(lián)網(wǎng)時(shí)代已經(jīng)到來。作為Google 推出的一款操作系統(tǒng),Android 自問世以來就吸引了人們廣泛的關(guān)注,受到眾多廠商開發(fā)者的青睞。Android 是一個(gè)開放、完整、免費(fèi)的手機(jī)平臺(tái),強(qiáng)大的開源特性吸引了越來越多的開發(fā)者,Android的版本如今已由最初的1.1 升級(jí)到最新的4.0,功能越來越強(qiáng)大,用戶體驗(yàn)越來越好,在Android 平臺(tái)上發(fā)布的應(yīng)用產(chǎn)品更加豐富多彩。
  Android 平臺(tái)上的應(yīng)用越來越多,人們對(duì)應(yīng)用的要求越來越高?,F(xiàn)階段觸屏手機(jī)是趨勢(shì),觸摸是人們與應(yīng)用交互的主流方式,人們對(duì)觸摸的靈敏度,簡(jiǎn)易性和方便度要求越來越高,有必要優(yōu)化應(yīng)用的觸摸效果。
  1 Android 平臺(tái)的觸摸機(jī)制
  一般而言,事件是用戶與UI(圖形界面)進(jìn)行交互的時(shí)候所觸發(fā)的操作。例如在手機(jī)屏幕上觸摸特定的區(qū)域就會(huì)觸發(fā)對(duì)應(yīng)的事件,在Android 中這些事件將被傳送到事件處理器,它是一個(gè)專門接受事件對(duì)象并對(duì)其進(jìn)行翻譯和處理的方法。
  在 Android 中用戶事件響應(yīng)是很重要的,用戶消息主要來源于3 種硬件外部設(shè)備:觸摸響應(yīng)(ONTouch系列方法)、按鍵響應(yīng)(onKey系列方法)和軌跡球(Trackball)。不論我們是通過觸摸方式與屏幕交互,還是使用軌跡球來交互,任何與屏幕相關(guān)的交互都是與屏幕相應(yīng)位置上的視圖控件的交互。現(xiàn)在 Android 系統(tǒng)的手機(jī)幾乎全是觸屏,基本的按鍵越來越少,觸摸屏響應(yīng)成為發(fā)展的大趨勢(shì),所以在應(yīng)用設(shè)計(jì)的時(shí)候主要考慮觸摸的效果問題,著重優(yōu)化用戶觸摸響應(yīng)。
  Android平臺(tái)觸摸響應(yīng)的實(shí)現(xiàn)和優(yōu)化
  圖1 Android 平臺(tái)用戶消息處理流程
  圖 1 詳細(xì)說明了各種用戶操作被系統(tǒng)捕獲的過程。系統(tǒng)捕獲用戶的響應(yīng)后,由Linux 驅(qū)動(dòng)捕獲用戶的消息,經(jīng)過Android 框架層的AcTIvity Manager 的作用傳遞給Activity中的系統(tǒng)方法,通過執(zhí)行相應(yīng)的系統(tǒng)方法更新View 類,消息傳遞至Application Framework 層,最后調(diào)用Linux 驅(qū)動(dòng),控制著界面的繪制和更新。在Android 工程中,觸摸相關(guān)的接口函數(shù)主要封裝在android.view.KeyEvent 類中,寫觸摸屏操控的時(shí)候首先導(dǎo)入該類的包,在Activity的子類中對(duì)該方法進(jìn)行說明即可。Android 的事件處理機(jī)制相對(duì)簡(jiǎn)單,對(duì)于事件處理機(jī)制不必詳細(xì)理解,實(shí)現(xiàn)各種響應(yīng)時(shí)只需具體實(shí)現(xiàn)各個(gè)方法即可,各個(gè)方法的具體實(shí)現(xiàn)在View類中進(jìn)行,下面著重說明Android 平臺(tái)觸摸響應(yīng)的實(shí)現(xiàn)。
  2 Android 平臺(tái)觸摸響應(yīng)的實(shí)現(xiàn)
  一般而言在 Android 中,對(duì)于觸摸事件的處理如同UI 事件一樣,主要通過兩種方法來處理,一種是利用View 類的onTouchEvent()方法,一種是實(shí)現(xiàn)OnTouchLiSTener 接口的onTouch()方法。系統(tǒng)中當(dāng)這兩種方法都存在的前提下,系統(tǒng)將會(huì)優(yōu)先采用OnTouchListener接口回調(diào)方法進(jìn)行處理。一般在簡(jiǎn)單的UI 設(shè)計(jì)界面重寫onTouchListener()方法,涉及到多個(gè)Activity 切換時(shí)在方法中實(shí)現(xiàn)Activity 信息保存與跳轉(zhuǎn)即可。
  對(duì)于大型應(yīng)用而言,界面狀態(tài)比較復(fù)雜,觸摸響應(yīng)需要詳細(xì)處理,系統(tǒng)提供了一個(gè)專門用于處理用戶觸摸事件的接口函數(shù)onTouchEvent()。實(shí)際開發(fā)過程中只需先聲明此接口函數(shù),然后在主View類中重寫該函數(shù)實(shí)現(xiàn)具體的觸摸效果即可。下面是接口函數(shù)的聲明:
  Android平臺(tái)觸摸響應(yīng)的實(shí)現(xiàn)和優(yōu)化
  觸屏監(jiān)聽方法中只有一個(gè)MotionEvent event 參數(shù),此類的實(shí)例中保存了玩家觸屏的各種動(dòng)作,常見的有:按下動(dòng)作、移動(dòng)動(dòng)作、多點(diǎn)觸屏、屏幕壓力等,在此類中定義了很多動(dòng)作的靜態(tài)常量值,通過event.getAction()方法獲取玩家的動(dòng)作與所需動(dòng)作常量值進(jìn)行匹配。
  上面是聲音界面的觸摸響應(yīng)處理:event.getAction()是鍵控的類型,是MotionEvent 類的系統(tǒng)方法,獲取當(dāng)前的觸摸響應(yīng)。當(dāng)向下觸摸屏幕時(shí),就響應(yīng)MotionEvent.ACTION_DOWN這個(gè)動(dòng)作,當(dāng)觸點(diǎn)滿足給定的區(qū)間范圍,就執(zhí)行相當(dāng)?shù)牟僮鳎瑢?shí)現(xiàn)游戲的狀態(tài)跳轉(zhuǎn)。觸摸范圍在劃分的時(shí)候最好以屏幕的相對(duì)位置為參考點(diǎn),這樣在應(yīng)用橫豎屏的處理或者應(yīng)用移植的時(shí)候會(huì)更方便,避免了頻繁修改參考坐標(biāo)的值。在程序入口處繼承Activity 的子類中可以獲取當(dāng)前設(shè)備屏幕寬和高的具體屬性,這樣觸摸范圍確定時(shí)以屏幕的寬和高的屬性值來定位就可以了。
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1TC358743XBG評(píng)估板參考手冊(cè)
  2. 1.36 MB  |  330次下載  |  免費(fèi)
  3. 2開關(guān)電源基礎(chǔ)知識(shí)
  4. 5.73 MB  |  6次下載  |  免費(fèi)
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設(shè)計(jì)
  8. 0.60 MB  |  3次下載  |  免費(fèi)
  9. 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
  10. 0.61 MB  |  2次下載  |  免費(fèi)
  11. 6基于FPGA的C8051F單片機(jī)開發(fā)板設(shè)計(jì)
  12. 0.70 MB  |  2次下載  |  免費(fèi)
  13. 751單片機(jī)窗簾控制器仿真程序
  14. 1.93 MB  |  2次下載  |  免費(fèi)
  15. 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21548次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537796次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191185次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183278次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)