Android按钮单击事件的四种常用写法总结

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
您可能感兴趣的文章:
Android 使用 Intent 传递数据的实现思路与代码 Android 不同 Activity 间数据的传递 Bundle 对象的应用 Android 系列之 Intent 传递对象的几种实例方法 Android 学习笔记--通过 Application 传递数据代码示例
} });
btn2.setOnClickListener(new OnClickListener() {
@Override public void onClick(View v) {
// TODO Auto-generated method stub Toast tst = Toast.makeText(TestButtonActivity.this, "222222222", Toast.LENGTH_SHORT); tst.show(); } }); } }
// 注意 这里没有 @Override 标签 public void onClick(View v) {
// TODO Auto-generated method stub switch (v.getId()) { case R.id.button1:
tst = Toast.makeText(this, "111111111", Toast.LENGTH_SHORT); tst.show(); break; case R.id.button2: tst = Toast.makeText(this, "222222222", Toast.LENGTH_SHORT); tst.show(); break; default: break; } } }
xml 文件代码如下:
<Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button1" />
<Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button2" />
这里在输完 android:的时候按下 Alt+/ 会有 onClick 属性的提示, 但输入到 android:onClick=“ 的地方按下 Alt+/ 并没有提示 onClick 选项,让我突然觉得这里好像有 点问题。
public class TestButtonActivity extends Activity {
Android Activity 之间传递图片(Bitmap)的方法
Android Touch 事件分发过程详解
Android 中捕获 TTextView 文本中的链接点击事件方法
android 中 intent 传递 list 或者对象的方法
Android 中三种注入事件方法比较
这种写法整个代码中都不用声明 button 就可以实现 button 的单击事件。
以上就是四种实现按钮单击事件的方法。
粗略总结一下,就是按钮少的时候用匿名内部类会比较快,比如写 demo 测试的时候或者登 陆界面之类的。
按钮多的情况我还是选择第三种方觉得写法不够大众化。
btn1.setOnClickListener(this); btn2.setOnClickListener(this); }
@Override public void onClick(View v) {
// TODO Auto-generated method stub switch (v.getId()) { case R.id.button1:
Button btn1, btn2;
Toast tst;
@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); setContentView(yout.activity_test_button); }
Android 中实现监听 ScrollView 滑动事件
封装的 android 监听手指左右滑动屏幕的事件类分享
Android 事件传递机制
2015-12-12Android checkbox 的 listView 具体操作方法 2012-12-12Android 在高 jar 包版本的工程中修改方法 2013-03-03Android 图片特效处理的方法实例 2015-11-11Android 编程实现获取图片资源的四种方法 2016-02-02Android 实现图片异步加载及本地缓存 2016-01-01Android 仿微信朋友圈实现滚动条下拉反弹效果 2014-02-02android downsample 降低音频采样频率代码 2013-06-06android 中 ProgressDialog 与 ProgressBar 的使用详解 2013-06-06 基于 Android 扫描 sd 卡与系统文件的介绍 2013-03-03listview 里子项有按钮的情况使用介绍
super.onCreate(savedInstanceState); setContentView(yout.activity_test_button);
btn1 = (Button) findViewById(R.id.button1); btn2 = (Button) findViewById(R.id.button2);
// TODO Auto-generated method stub switch (v.getId()) { case R.id.button1:
tst = Toast.makeText(TestButtonActivity.this, "111111111", Toast.LENGTH_SHORT);
public class TestButtonActivity extends Activity implements OnClickListener {
Button btn1, btn2; Toast tst;
@Override protected void onCreate(Bundle savedInstanceState) {
tst.show(); break; case R.id.button2:
tst = Toast.makeText(TestButtonActivity.this, "222222222", Toast.LENGTH_SHORT);
tst.show(); break; default: break; } } }
2. 自定义单击事件监听类:
public class TestButtonActivity extends Activity {
Button btn1, btn2; Toast tst;
class MyClickListener implements OnClickListener {
@Override public void onClick(View v) {
3. 最后一种是我今天看到的一种写法,在 XML 文件中“显示指定按钮的 onClick 属性,这 样点击按钮时会利用反射的方式调用对应 Activity 中的 click()方法”
<Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="onClick" android:text="Button1" />
super.onCreate(savedInstanceState); setContentView(yout.activity_test_button);
btn1 = (Button) findViewById(R.id.button1); btn2 = (Button) findViewById(R.id.button2);
tst = Toast.makeText(this, "111111111", Toast.LENGTH_SHORT); tst.show(); break; case R.id.button2: tst = Toast.makeText(this, "222222222", Toast.LENGTH_SHORT); tst.show(); break; default: break; } } }
btn1.setOnClickListener(new OnClickListener() {
@Override public void onClick(View v) {
// TODO Auto-generated method stub Toast tst = Toast.makeText(TestButtonActivity.this, "111111111", Toast.LENGTH_SHORT); tst.show();
<Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="onClick" android:text="Button2" />
Android 按钮单击事件的四种常用写法总结
这篇文章主要介绍了 Android 按钮单击事件的四种常用写法总结,比较了常见的四种写法的 优劣,有不错的参考借鉴价值,需要的朋友可以参考下
很多学习 Android 程序设计的人都会发现每个人对代码的写法都有不同的偏好,比较明显的 就是对控件响应事件的写法的不同。因此本文就把这些写法总结一下,比较下各种写法的优 劣,希望对大家灵活地选择编码方式可以有一定的参考借鉴价值。
btn1.setOnClickListener(new MyClickListener()); btn2.setOnClickListener(new MyClickListener()); } }
Activity 继承 View.OnClickListener,由 Activity 实现 OnClick(View view)方法,在 OnClick(View view)方法中用 switch-case 对不同 id 代表的 button 进行相应的处理
四种方法分述如下:
1. 匿名内部类:
public class TestButtonActivity extends Activity {
Button btn1, btn2; Toast tst;
@Override protected void onCreate(Bundle savedInstanceState) {
@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); setContentView(yout.activity_test_button);
btn1 = (Button) findViewById(R.id.button1); btn2 = (Button) findViewById(R.id.button2);
相关文档
最新文档