日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android基于回调的事件处理

發(fā)布時(shí)間:2025/3/20 Android 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android基于回调的事件处理 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

基于回調(diào)的事件處理模型更加簡單:

? 如果說事件監(jiān)聽機(jī)制是一種委托式的事件處理,那么回調(diào)機(jī)制則恰好與之相反:對(duì)于基于回調(diào)的時(shí)間處理模型來說,事件源和事件監(jiān)聽器是統(tǒng)一的,或者說事件監(jiān)聽器完全消失了。當(dāng)用戶在GUI組件上激發(fā)某個(gè)事件時(shí),組件自己特定的方法將會(huì)負(fù)責(zé)處理該事件

因此回調(diào)監(jiān)聽機(jī)制只需繼承該組件,并重寫該組件類的事件處理方法來實(shí)現(xiàn)

為了事件回調(diào)機(jī)制的事件處理,Android為所有GUI組件都提供了一些事件處理回調(diào)方法,以View為例:

Boolean onKeyDown(int keyCode,KeyEvent event);當(dāng)用戶在該組件上按下某個(gè)按鍵時(shí)觸發(fā)該方法

boolean onKeyShortcut(int keyCode,KeyEvent event);當(dāng)一個(gè)鍵盤快捷鍵事件發(fā)生時(shí)觸發(fā)該方法

Boolean ?onKeyLongPress(int keyCode,KeyEvent event),當(dāng)用戶在該組件上長按某個(gè)按鍵時(shí)觸發(fā)該方法

boolean onTouchEvent(int keyCode,KeyEvent event);當(dāng)用戶在該組件上觸發(fā)觸摸屏事件時(shí)觸發(fā)該方法

...等等

MainActivity.java

public class MainActivity extends Activity {@Overridepublic void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);} }main.xml

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical"android:layout_width="match_parent"android:layout_height="match_parent"> <!-- 使用自定義View時(shí)應(yīng)使用全限定類名 --> <org.crazyit.event.MyButton android:layout_width="match_parent" android:layout_height="wrap_content" android:text="單擊我"/> </LinearLayout> MyButton.java

public class MyButton extends Button {public MyButton(Context context, AttributeSet set){super(context, set);}@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event){super.onKeyDown(keyCode, event);Log.v("-crazyit.org-", "the onKeyDown in MyButton");// 返回true,表明該事件不會(huì)向外擴(kuò)散return true;} }

總結(jié)

以上是生活随笔為你收集整理的Android基于回调的事件处理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。