溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Android學(xué)習(xí)—Button的四種OnClick響應(yīng)方法

發(fā)布時間:2020-07-08 22:02:30 來源:網(wǎng)絡(luò) 閱讀:11960 作者:孤月2012 欄目:移動開發(fā)

在Android或Java開發(fā)中,對于button的OnClickListener有下面四種實(shí)現(xiàn)方式,可以根據(jù)需要選擇合適的用法。

方法一:

適合場景:通用

 Button bt_Demo = (Button)findViewById(R.id.bt_Demo);
 bt_Demo.setOnClickListener(new OnClickListener()
 {
  @Override
  public void onClick(View v)
  {
   //響應(yīng)Clicked事件
   //......
  }
 });

方法二:

適合場景:適合有多個button或者button數(shù)組時使用

Button bt_Demo = (Button)findViewById(R.id.bt_Demo);
 bt_Demo.setOnClickListener(listener);
 
 private OnClickListener listener = new OnClickListener(){ 
  @Override
  public void onClick(View arg0) {
   // TODO Auto-generated method stub  
    switch(arg0.getId()){ 
     case R.id.bt_Demo:
     //響應(yīng)Clicked事件
     //......
     break;
     default:
     break;
     }
  }
 }

方法三:

適合場景:適合有多個button或者button數(shù)組時使用,這跟方法二其實(shí)差別不大

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) {
    //響應(yīng)Clicked事件
    //......
  }  
 }

方法四:

適合場景:適合界面上有不同類型的控件,這種方式將所有控件的onclick方法在一個方法里面實(shí)現(xiàn),看起來比較簡潔

  //在Activity中直接OnClickListener接口:  
   import android.view.View.OnClickListener;
   public class MyActivity extends Activity implements OnClickListener {
   
   @Override public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.main);
     //按紐
     Button bt_Demo = (Button)findViewById(R.id.bt_Demo);
     bt_Demo.setOnClickListener(this); 
   }
   
   //響應(yīng)Click事件
   public void onClick(View v) {
       switch (v.getId()) {
          case R.id.bt_Demo: 
     //響應(yīng)Clicked事件
     //......
           break;
          default:
           break;
       }
    }
    
 }

 參考:http://blog.csdn.net/xcl168/article/details/14452807

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI