Android響應事件onClick方法的五種實現(xiàn)方式小結(jié)
在Android的開發(fā)中,對于點擊事件的OnClickListener有下面四種實現(xiàn)方式,可以根據(jù)實際場景的需要選擇合適的用法。下面以Button按鈕來舉例說明。
方法一:
適合場景:任何場景都通用,但對于一個Activity中要是有多個控件要實現(xiàn)onClick方法就會顯得代碼冗余。
Button bt_Demo = (Button)findViewById(R.id.bt_Demo);
bt_Demo.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//具體點擊操作的邏輯
}
});
方法二:
適合場景:適合有多個同類型控件(比如Button數(shù)組)要實現(xiàn)onClick()方法時使用
Button[] demoBtns ;
……
for(Button button : demoBtns ){
button.setOnClickListener(listener);
}
private OnClickListener listener = new OnClickListener(){
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
switch(arg0.getId()){
case R.id.btn_Demo:
//具體點擊操作的邏輯
break;
default:
break;
}
}
}
方法三:
適合場景:同方法二,兩者差別不大
Button bt_Demo = (Button)findViewById(R.id.bt_Demo);
bt_Demo.setOnClickListener(new ButtonListener());
private class ButtonListener implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
switch(arg0.getId()){
case R.id.btn_Demo:
//具體點擊操作的邏輯
break;
default:
break;
}
}
}
方法四:
適合場景:適合界面上有不同類型的控件,這種方式將所有控件的onClick方法在一個方法里面實現(xiàn),看起來比較簡潔
在Activity中實現(xiàn)OnClickListener接口:
public class MyActivity extends Activity implements OnClickListener {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//按紐
Button btn_Demo = (Button)findViewById(R.id.bt_Demo);
bt_Demo.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch(arg0.getId()){
case R.id.btn_Demo:
//具體點擊操作的邏輯
break;
default:
break;
}
}
}
方法五:
適合場景:通用場景,特別是某個控件的點擊方法要實現(xiàn)的邏輯較復雜的時候使用。
在布局文件中加上android:onClick="方法名",對于有些控件(比如TextView)需要兼容舊的SDK API,還需要加上android:clickable="true"
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clickable="true"
android:onClick="onTextViewClick"
android:text="點擊事件"
android:textSize="16sp" />
//在代碼中實現(xiàn)onTextViewClick()方法即可。
public void onTextViewClick(){
//具體點擊操作的邏輯
}
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
- Android ButtonOnClick事件的寫法總結(jié)
- 詳談Android中onTouch與onClick事件的關系(必看)
- Android onClick按鈕單擊事件的四種常用寫法
- Android ListView 子控件onClick正確獲取position的方法
- Android onClick方法與setOnClickListener方法對比
- Android使用TextView,設置onClick屬性無效的解決方法
- 三種Android單擊事件onclick的實現(xiàn)方法
- Android中button實現(xiàn)onclicklistener事件的兩種方式
- Android 布局中的android:onClick的使用方法總結(jié)
相關文章
使用Android Studio創(chuàng)建OpenCV4.1.0 項目的步驟
這篇文章主要介紹了使用Android Studio創(chuàng)建OpenCV4.1.0 項目的步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-10-10
Android編程創(chuàng)建與解析xml的常用方法詳解
這篇文章主要介紹了Android編程創(chuàng)建與解析xml的常用方法,結(jié)合具體實例形式較為詳細的分析了Android操作xml文件的步驟、實現(xiàn)技巧與相關注意事項,需要的朋友可以參考下2017-05-05
Android自定義有限制區(qū)域圖例角度自識別涂鴉工具類
這篇文章主要為大家介紹了Android自定義有限制區(qū)域圖例角度自識別涂鴉工具類,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-02-02
Android開發(fā)之緩沖dialog對話框創(chuàng)建、使用與封裝操作
這篇文章主要介紹了Android開發(fā)之緩沖dialog對話框創(chuàng)建、使用與封裝操作,結(jié)合具體實例形式分析了Android緩沖dialog對話框的創(chuàng)建、設置、顯示、關閉等操作實現(xiàn)方法,需要的朋友可以參考下2017-09-09
Android編程實現(xiàn)懸浮窗獲取并顯示當前內(nèi)存使用量的方法
這篇文章主要介紹了Android編程實現(xiàn)懸浮窗獲取并顯示當前內(nèi)存使用量的方法,涉及Android針對窗口及內(nèi)存的相關操作技巧,需要的朋友可以參考下2017-07-07
Android點擊Button實現(xiàn)功能的幾種方法總結(jié)
當Button有多個或者Button的使用次數(shù)很多時,我們需要采用綁定監(jiān)聽器的做法,其實,綁定監(jiān)聽器也有幾種方法,不過,我在這里就不一一列舉了,畢竟那些方法在實際的應用中也不常見2013-10-10
Android使用OKHTTP解析JSON數(shù)據(jù)的實例代碼
本篇文章主要介紹了Android使用OKHTTP解析JSON數(shù)據(jù)的實例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07
Android LinearLayout實現(xiàn)自動換行
這篇文章主要為大家詳細介紹了Android LinearLayout實現(xiàn)自動換行,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-08-08

