OnClick事件的实现方法:
1.匿名内部类
2.独立类
3.实现接口的方法
具体实现方法,以Button为例
1.在activity中注册一个button
<Button
android:id="@+id/button1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/button_name"
/>
2.在MainActivity中初始化,通过findViewById方法找到button然后就可以实现Onclick事件了
private Button bt;//初始化
bt=(Button)findViewById(R.id.button1);//找到button
匿名内部类的实现方法
loginButton.setOnclickListener(new OnclickLishtener(){
public void onClick(View arg0){
//当前onclick方法中监听点击Button的动作
System.out.println('我的button被点击了');
}
});
外部类接口的方式来实现监听
loginButton.setOnClickListener(new MyOnclickListener() {
@Override
public void onClick(View v) {
// 调用父类方法,实现了父类方法,还可以实现自己特有的方法
super.onClick(v);
Toast.makeText(MainActivty.this, "loginbutton要执行的逻辑", 1).show();
}
});//在MainActivity中的代码
// OnClickListener是一个接口,所以不能继承
public class MyOnclickListener implements OnClickListener {
@Override
public void onClick(View v) {
Log.i("test", "父类的onClick方法实现了");
}
}// 一个外部类
实现接口的方式来实现监听
public class MainActivity extends Activity implements OnclickListener
bt.setOnclickListener(this);//通过this来绑定按钮