Button用得挺多的,在這整理了下它的事件處理方法,發現實現方法還不少,我比較喜歡第二種,你呢,最常用哪一種?
實現一:
復制代碼代碼如下:
Button bt_Demo = (Button)findViewById(R.id.bt_Demo);
bt_Demo.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
//響應Clicked事件
//......
}
});
實現二:
復制代碼代碼如下:
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:
//響應Clicked事件
//......
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) {
//響應Clicked事件
//......
}
}
實現四:
復制代碼代碼如下:
//在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);
}
//響應Click事件
public void onClick(View v) {
switch (v.getId()) {
case R.id.bt_Demo:
//響應Clicked事件
//......
break;
default:
break;
}
}
}
感謝這麼全面的總結,雖然這些都知道,但是自己缺乏總結。