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实现。
时间: 2024-12-29 06:08:39

Android中Button四种点击事件实现方式的相关文章

Android的按钮四种点击事件

本文记录一下按钮的四种点击事件 第一种 public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //------------第一种---------------------- Button

Android入门——电话拨号器和四种点击事件

相对于HelloWorld来说,电话拨号器也是Android的一个入门demo,从这个例子我们要理清楚做安卓项目的思路. 大体分为三步: 1.理解需求,理清思路 2.设计UI 3.代码实现 电话拨号器 1. 理解需求: *一个文本框--用来接收电话号码 *一个按钮--用来触发事件 2. 设计UI 3. 代码实现 public class MainActivity extends Activity { private EditText et_number; //定义变量用来接收电话号码 priva

Android 四种点击监听方式

Android点击监听事件经常用到,经常用到的有以下几种 第一种:最常用到的,通过实现OnClickListen,实现OnClick方法去实现 public class MainActivity extends Activity implements OnClickListener // 用实现接口的方式实现点击 button1 = (Button) findViewById(R.id.button1); button1.setOnClickListener(this); @Override p

Android中Activity四种加载模式

Activity四种加载模式 我们知道在配置Activity的时候可以指定android:lauchMode属性,该属性用于配置该Activity的加载模式,概述行支持以下四种: 1.standard: 标准模式,这是默认的加载模式. 2.singleTop: Task顶单例模式. 3.singleTask: Task内单例模式. 4.singleInstance: 全局单例模式. 那么Activity为什么需要制定加载模式呢? 由于在Android上启动一个应用后,系统会自动的创建一个属于该应

Ngui 五种点击事件实现方式及在3d场景中点透的情况

http://www.unity蛮牛.com/thread-22018-1-1.html ngui作为unity界面插件之一中,无疑是最好用,使用最多的了从自学unity到现在界面一直使用它 由于它的持续更新,我在此不得不说,确实很为开发者作想,为什么这么讲呢?大概在去年吧  当时用的那个版本已经不记得了,反正就是有个需求,要实现“无限循环”拖动,使用过以前ngui的人就知道当时是没有这个功能的,后来被自己弄出来没几天,就发现新版本中就自带了这样的东西,也就是如今ngui列子中的 Endless

Button的四种点击事件

1.XML文件布局 <Button     android:id="@+id/bt1"     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:onClick="doClick"     android:text="XML添加doClick"     android:lay

Android 中listview的item点击事件失效了的解决办法

原因多半是由于在自己定义的Item中存在诸如ImageButton,Button,CheckBox等子控件(也可以说是Button或者Checkable的子类控件),此时这些子控件会将焦点获取到,所以常常当点击item时变化的是子控件,item本身的点击没有响应. 即在Item布局的根布局加上android:descendantFocusability=”blocksDescendants”的属性就好了

Activity中的四种启动模式

在Android中每个界面都是一个Activity,切换界面操作其实是多个不同Activity之间的实例化操作.在Android中Activity的启动模式决定了Activity的启动运行方式. Android总Activity的启动模式分为四种: [html] view plaincopy Activity启动模式设置: <activity android:name=".MainActivity" android:launchMode="standard" 

Android中Button的五种监听事件

简单聊一下Android中Button的五种监听事件: 1.在布局文件中为button添加onClick属性,Activity实现其方法2.匿名内部类作为事件监听器类3.内部类作为监听器4.Activity本身作为事件监听器,实现onClickListener5.外部类作为监听器 ButtonListenerActivity.class public class ButtonListenerActivity extends AppCompatActivity implements View.On