Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android 四種綁定監聽事件的方式

Android 四種綁定監聽事件的方式

編輯:關於Android編程

1、

直接通過id查找後,綁定匿名內部類作為事件監聽類。代碼如下:

Button loginButton = (Button) findViewById(R.id.tologin1);

btn1.setOnclickListener(new OnclickListener(){

public void onClick(View v){

// 要執行的操作

}

});


這種方法有好也有不好,好的是比較直觀方便,不好的是,如果按鈕多了,代碼看起來比較亂。


2、

實現點擊事件的接口,然後一個個按鈕地去綁定,最後統一做處理。代碼如下:


public class ActivityLogin1 extends Activity implements View.OnClickListener


btnLogin = (Button) findViewById(R.id.btnLogin);
btnLogin.setOnClickListener(this);


btnBack = (Button) findViewById(R.id.back);
btnBack.setOnClickListener(this);


@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.back:
//對應操作

break;

case R.id.btnLogin:

//對應操作

break;

.......

}

}


這種方法有點批量處理的味道。統一處理,可以讓代碼看起來更加結構化。


3、

自定義監聽事件類,實現點擊事件的接口。代碼如下:


Button btn1=(Button)findViewById(R.id.myButton1);

Button btn2=(Button)findViewById(R.id.myButton2);

btn1.setOnclickListener(new Startclick());

btn2.setOnclickListener(new Stopclick());


class StartClick implements OnClickListener{

public void onClick(View v){//或直接跟上要執行的動作

switch(v.getId()){

case R.id.myButton1:

//要執行的動作

}

}

}


class StopClick implements OnClickListener{////或直接跟上要執行的動作

public void onClick(View v){

switch(v.getId()){

case R.id.myButton2:

//要執行的動作

}

}

}


第三種方法我用得比較少,代碼參考別人的。詳情可見,http://blog.sina.com.cn/s/blog_48b5bee10102uwmz.html。


4、


我要重點說一下第四種方法。因為比較常用第一種和第二種,有次看支付寶開發集成demo時,找按鈕的監聽事件找了半天找不到。那裡面使用的就是這種綁定方式。代碼如下:


android:id="@+id/pay"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:onClick="pay"
android:text="支付"
tools:ignore="HardcodedText" />


public void pay(View v) {

//要執行的操作

}


這種方法比較簡便,因為我不常用,差點忘了還有這種方法。重點是在xml布局裡,android:onClick="pay",pay是一個方法名,你要在這個布局對應的Activity裡面實現這個方法。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved