第一种方式:匿名内部类方式
这种方式是官网推荐使用 的一种方式,即使用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上即可:
第三种方式:
指定button 的onClick属性方式
先在layout文件中指定onClick属性:
然后到Activity中实现这个onButtonClick方法:
第四种方式:
类中实现点击事件
1、在父类中调用点击事件
2、创建内部类
第五种方式:
把事件处理单独成一个类,基本没什么好处,除非此事件处理器经常被复用。
第二种方式: 接口方式
定义一个内部类实现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>
先在layout文件中指定onClick属性:
- <Button
- android:id="@+id/bt_dail"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:onClick="Call"
- android:text="拨打此号码" />
- public void dailPhone(View view){
- Call();
- }
1、在父类中调用点击事件
- bt_dail.setOnClickListener(new MyButtonListener());
- private class MyButtonListener implements OnClickListener{
- /**
- * 当按钮被点击的时候调用
- */
- @Override
- public void onClick(View v) {
- callPhone();
- }
- }
第五种方式:
把事件处理单独成一个类,基本没什么好处,除非此事件处理器经常被复用。
转载:http://blog.youkuaiyun.com/chaoyu168/article/details/49471325