监听器使用
1.第一种方法,使用匿名内部类
(1).在activity中声明对象
private Button butn;
(2).在onCreate函数中初始化对象
protected void onCreate(Bundle savedInstanceState) {
..........
butn = (Button)findViewById(R.id.button);
}
(3).设置监听器.注意在文件开始要导入android.view.View.OnClickListener;
butn.setOnClickListener(new OnClickListener() {
.........
});
(4).重写OnClick方法
public void onClick(View v){
print.setText("you click it");
}
第二种方法,使用内部类
(1)~(2)实现定义并初始化对象
(3)设置监听器(在onCreate里写),new一个内部对象(内部对象根据(4)中定义的类来new,作为参数
btnshow.setOnClickListener(new buttonClickListener());
(4)定义刚才的内部类,继承View.OnClickListener接口
class buttonClickListener implements View.OnClickListener{ //buttonClickListener的名字随意与(4)中一致即可
public void onClick(View v) {
print.setText("点击实现");
}
}
第三种方法,使用Activity作为监听器
(1)让MainActivity使用OnClickListener接口
public class MainActivity extends Activity implements OnClickListener {
................................
}
(2)定义并初始化按钮对象
private Button btn;
btn=(Button)findViewById(R.id.button);
(3)在Activity中重写onClick方法
public void onClick(View v){
print.setText("you click it");
}
第四种方法,绑定xml标签
(1)[xml]在xml文件下的Button标签下添加一条
android:onClick="btnclick"
(2)[java]在Activity中写xml中的方法(无需定义并初始化按钮对象)
public void btnclick(View source) {
print.setText("you click it");
}