Android 点击事件响应
使用四种方式响应点击事件:效果图
1. 布局文件中button添加OnClick 函数
1. 布局文件
<Button
android:id="@+id/bt_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="buttonAction"
android:text="绘制圆环图" />
2. Activity 中重写监听方法
//第一种方式响应点击事件:xml 中按钮添加onclick 属性
public void buttonAction(View view) {
Toast.makeText(this, "按钮1", Toast.LENGTH_SHORT).show();
}
2. Activity 实现 View.OnClickListener
1. 实现系统监听
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bt_2 = (Button) findViewById(R.id.bt_2);
bt_2.setOnClickListener(this);//this
}
}
2. 监听响应函数
//第二种方式响应点击事件:当前Activity 实现onclik 方法
@Override
public void onClick(View v) {
if (v == bt_2) {
Toast.makeText(this, "按钮2", Toast.LENGTH_SHORT).show();
}
}
3. 监听 设置new View.OnClickListener()
直接为button指定监听
直接
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bt_3 = (Button) findViewById(R.id.bt_3);
//第三种方式:使用运行是监听类
bt_3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this, "按钮3", Toast.LENGTH_SHORT).show();
}
});
}
4. 使用new 监听类 为Button 设置
1. 创建监听类
class ButtonLister implements View.OnClickListener {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this, "按钮4", Toast.LENGTH_SHORT).show();
}
}
2. Button指定监听
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//第四种方式:创建监听类 事项监听方法
bt_4 = (Button) findViewById(R.id.bt_4);
bt_4.setOnClickListener(new ButtonLister());
}