第一种方式:匿名内部类方式
这种方式是官网推荐使用 的一种方式,即使用setOnClickListener()函数的方式,参数直接使用匿名,实现OnClickListener接口的onclick()方法。
在使用该方法的时候,一定不要把包import错了。* * 要导入android.view.View.OnClickListener* 在此处不要把包导入错了*/fun_btn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stubToast.makeText(getApplicationContext(), "通过setOnClickListener()方法实现",Toast.LENGTH_SHORT).show();}});</span>
第二种方式: 接口方式
定义一个内部类实现OnClickListener接口。在这里可以实现对多个按钮的监听。
首先在当前Activity实现OnclickListener接口:
然后就是实现接口方法:
最后就是绑定到Button上即可:
先在layout文件中指定onClick属性:
1、在父类中调用点击事件
第五种方式:
把事件处理单独成一个类,基本没什么好处,除非此事件处理器经常被复用。
第二种方式: 接口方式
定义一个内部类实现OnClickListener接口。在这里可以实现对多个按钮的监听。
首先在当前Activity实现OnclickListener接口:
public class MainActivity extends Activity implements OnClickListener
然后就是实现接口方法:
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.button3:
ContactTest c = new ContactTest();
c.testInsert(context);
break;
case R.id.button4:
ContentResolver cResolver1=this.getContentResolver();
Uri uri4=ContactsContract.RawContacts.CONTENT_URI.buildUpon()
.appendQueryParameter(ContactsContract.CALLER_IS_SYNCADAPTER, "true").build();
cResolver1.delete(uri4, null, null);
default:
break;
}
}
最后就是绑定到Button上即可:
<span style="font-size:12px;">button.setOnClickListener(this); </span>
第三种方式:
指定button 的onClick属性方式
先在layout文件中指定onClick属性:
<Button
android:id="@+id/bt_dail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="Call"
android:text="拨打此号码" />
然后到Activity中实现这个onButtonClick方法:
public void dailPhone(View view){
Call();
}
第四种方式:
类中实现点击事件
1、在父类中调用点击事件
bt_dail.setOnClickListener(new MyButtonListener());
2、创建内部类
private class MyButtonListener implements OnClickListener{
/**
* 当按钮被点击的时候调用
*/
@Override
public void onClick(View v) {
callPhone();
}
}
第五种方式:
把事件处理单独成一个类,基本没什么好处,除非此事件处理器经常被复用。