第一种方式:匿名内部类方式
这种方式是官网推荐使用 的一种方式,即使用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(); } }
第五种方式:
把事件处理单独成一个类,基本没什么好处,除非此事件处理器经常被复用。