Android中Button四种点击事件实现方式
Posted 半颗白菜
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android中Button四种点击事件实现方式相关的知识,希望对你有一定的参考价值。
1.Xml添加监听属性,这里添加的doClick。
1 <Button 2 android:id="@+id/bt1" 3 android:layout_width="wrap_content" 4 android:layout_height="wrap_content" 5 android:onClick="doClick" 6 android:text="XML添加doClick" 7 android:layout_above="@+id/bt2" 8 android:layout_marginBottom="47dp" 9 />
1 public void doClick(View view) { 2 switch (view.getId()) { 3 case R.id.bt1: 4 Toast.makeText(MainActivity.this, "第一种点击事件:Xml添加doClick", Toast.LENGTH_SHORT).show(); 5 break; 6 7 } 8 9 }
在Activity中添加doClick实现方法。Activity中实现的方法要和XML添加的属性名相同,不建议实际开发中使用。
2.匿名内部类方式实现。
1 Button bt2 = (Button) findViewById(R.id.bt2); 2 bt2.setOnClickListener(new View.OnClickListener() { 3 @Override 4 public void onClick(View v) { 5 Toast.makeText(MainActivity.this, "第二种点击事件:匿名内部类", Toast.LENGTH_SHORT).show(); 6 } 7 });
3.自定义点击事件实现。
1 Button bt3 = (Button) findViewById(R.id.bt3); 2 bt3.setOnClickListener(new MyListener());
3 class MyListener implements View.OnClickListener { 4 @Override 5 public void onClick(View v) { 6 Toast.makeText(MainActivity.this, "第三种方法:自定义点击事件", Toast.LENGTH_SHORT).show(); 7 } 8 }
4.Activity继承View.OnClickListener,由Activity实现OnClick(View view)方法。
1 public class MainActivity extends AppCompatActivity implements View.OnClickListener { 2 @Override 3 protected void onCreate(Bundle savedInstanceState) { 4 super.onCreate(savedInstanceState); 5 setContentView(R.layout.activity_main); 6 Button bt4=(Button)findViewById(R.id.bt4); 7 bt4.setOnClickListener(this); 8 } 9 10 @Override 11 public void onClick(View v) { 12 switch (v.getId()) { 13 case R.id.bt4: 14 Toast.makeText(MainActivity.this, 15 "第四种点击事件:Activity继承View.OnClickListener,由Activity实现OnClick(View view)方法", 16 Toast.LENGTH_SHORT).show(); 17 } 18 } 19 }
备注:Button数量不多的情况下推荐使用第二种,匿名内部类的方式实现;反之则推荐使用第四种,Activity继承View.OnClickListener实现。
以上是关于Android中Button四种点击事件实现方式的主要内容,如果未能解决你的问题,请参考以下文章