Android中关于button的点击事件共有四种不同的方式,接下来我来一一展示:
一、内部类
在 onCrate() 方法中
// 采用内部类
获取button对象;button1=(Button)findViewById(R.id.button1);
监听事件
button1.setOnClickListener(new MyOnClickListener());
public class MyOnClickListener implements OnClickListener {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "采用内部类实现", Toast.LENGTH_SHORT).show();//提示框
}
二、匿名内部类
// 采用匿名内部类
获取button对象;button2=(Button)findViewById(R.id.button2);
button2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "采用匿名内部类实现", Toast.LENGTH_SHORT).show();//提示框,短时间
}
});
三、MainActity 实现 onclicklistener 接口
获取button对象;button3=(Button)findViewById(R.id.button3);
设置点击事件:button3.setOnClickListener(this);
创建OnClickListener对象:当前类实现OnClickListener接口,重写onclick方法;
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.button3:
Toast.makeText(MainActivity.this, "采用onclickListener实现", Toast.LENGTH_SHORT).show();//提示框,短时间
break;
default:
break;
}
}
适用于 当一个界面上有多个 按钮 方便使用
四、在在布局中添加onclik 属性
首先,在布局文件(xml文件)中的Button组件下的属性写:Android:onclik="login",这里的login只是一个方法名,可以随便取。
其次,在需要调用该按钮的Activity中编写方法:public void login(View view){方法体(自己写)};说明:该方法你必须的传一个View视图,它代表当前的的Button控件。
最后,当你点击Button的时候,就会调用login所对应的方法。