1.定义内部类,实现点击事件,使用时将内部类对象传入事件源的setOnClickListener()方法中
btn.setOnClickListener(new MyClickListener());
private class MyClickListener implements View.OnClickListener{
@Override
public void onClick(View v) {
// 功能代码
}
}
2.使用匿名内部类的方式实现点击事件
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//功能代码
}
});
3.继承接口
public class MainActivity extends ActionBarActivity implements OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button but = (Button)this.findViewById(R.id.bt_dial);
but.setOnClickListener(this);
}
@Override
public void onClick(View v) {
}
}
}
4.在Activity布局文件中,给事件源绑定onclick事件,并在Activity中提供事件的实现
activity_xxx_xml:
<Button
android:onClick="buttonClicked"
/>
Activity.java文件中,添加如下代码,注意点击事件的访问权限须为public,且形参为View类型
public void buttonClicked(View v){
}