首页 > 代码库 > Android中Button四种点击事件实现方式
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四种点击事件实现方式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。