第一种 测试使用

直接xml添加,平时在自己的测试demo中使用比较多。

1、直接在xml里给按钮添加点击事件

android:onClick="btn_click"

2、按住option + enter 给btn_click快捷创建activity代码

    public void btn_click(View view) {
//sout
System.out.println("哈哈哈,我被点击了");
Toast.makeText(this, "哈哈哈,我被点击了", Toast.LENGTH_SHORT).show();
}

第二种 按钮很多

当按钮有很多的时候,可以使用这一种

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

    @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); Button btn_click = findViewById(R.id.button);
btn_click.setOnClickListener(this);
} @Override
public void onClick(View v) {
System.out.println("哈哈哈,我被点击了3");
Toast.makeText(MainActivity.this, "哈哈哈,我被点击了3", Toast.LENGTH_SHORT).show();
}
}

按钮很多的情况

        btn_call.setOnClickListener(this);
btn_call2.setOnClickListener(this);
btn_call3.setOnClickListener(this);
btn_call4.setOnClickListener(this); @Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.button1: callPhone();
break; case R.id.button2:
callPhone();
break; case R.id.button3:
callPhone();
break; case R.id.button4: System.out.println("哈哈哈");
break; default:
break;
} }

第三种 内部类(常用)

定义一个内部类去实现按钮的点击事件

注意:这种方式会覆盖掉第一种

public class MainActivity extends AppCompatActivity {

    @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); Button btn_click = findViewById(R.id.button);
btn_click.setOnClickListener(new MyClickListener());
} class MyClickListener implements View.OnClickListener {
@Override
public void onClick(View v) {
System.out.println("哈哈哈,我被点击了2");
Toast.makeText(MainActivity.this, "哈哈哈,我被点击了2", Toast.LENGTH_SHORT).show();
}
} }

第四种 匿名内部类(常用)

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

    @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); Button btn_click = findViewById(R.id.button);
btn_click.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
System.out.println("哈哈哈,我被点击了4");
Toast.makeText(MainActivity.this, "哈哈哈,我被点击了4", Toast.LENGTH_SHORT).show();
}
});
}
}

Android 基础-1.0 按钮4种点击事件的更多相关文章

  1. Android按钮的四种点击事件

    本文记录一下按钮的四种点击事件 第一种 public class MainActivity extends Activity { @Override protected void onCreate(B ...

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

    相对于HelloWorld来说,电话拨号器也是Android的一个入门demo,从这个样例我们要理清楚做安卓项目的思路. 大体分为三步: 1.理解需求,理清思路 2.设计UI 3.代码实现 电话拨号器 ...

  3. Android入门——电话拨号器和4种点击事件

    关于HelloWorld为,电话拨号程序还AndroidA入门demo,从这个样例我们要理清楚做安卓项目的思路. 大体分为三步: 1.理解需求,理清思路 2.设计UI 3.代码实现 电话拨号器 1.  ...

  4. android中的4种点击事件

    四种点击事件     (1)采用内部类的方式去实现OnClickListener      (2)匿名内部类     (3)当前类imp OnClickListener      (4)onclick ...

  5. Android基础总结(一)项目结构,事件

    Android项目的目录结构 Activity:应用被打开时显示的界面 src:项目代码 R.java:项目中所有资源文件的资源id Android.jar:Android的jar包,导入此包方可使用 ...

  6. android学习之4种点击事件的响应方式

    如题,下面就一一列出对点击事件响应的4种方式: 第一种:内部类的形式: package com.example.dail; import android.net.Uri; import android ...

  7. Android中Button四种点击事件实现方式

    1.Xml添加监听属性,这里添加的doClick. <Button android:id="@+id/bt1" android:layout_width="wrap ...

  8. Android 基础-3.0 数据存储方式

    Android几种数据存储方式 文件存储 SharedPreference存储 Json解析 SQLite数据库存储 文件存储 文件存储是Android中最基本的一种存储方式,和Java中实现I/O的 ...

  9. 【转】Android - Button(按钮)的响应点击事件的4种写法

    原文网址:http://www.yrom.net/blog/2011/12/12/android-4-onclicklistener-of-button/ Button控件setOnclickList ...

随机推荐

  1. Android使用SQLite数据库

    Android中得数据库 加载驱动 连接数据库 操作数据库 使用API方式进行查询 事物操作 SQLite中的批处理,加快事物执行速度的.

  2. tigervnc环境搭建

    在root用户下执行以下操作: 1.安装tigervnc yum install tigervnc tigervnc-server 2.配置tigervnc 编辑vncservers文件,执行如下命令 ...

  3. Android Studio SDK Manager 解决无法更新问题

    一.首先要保证你可以FQ上google等网站. 这个..如何越过GFW就要靠自己了..网上也有很多教程.. 二.更改android sdk manager的option设置 选择Tools→Opini ...

  4. e.target与e.currentTarget对比

    复制以下代码,即可查看效果 <!DOCTYPE html> <html> <head lang="en"> <meta charset=& ...

  5. yum lock 解决方法

    方法一: # ps aux | grep yum # kill -9 pid 方法二:可以通过执行rm -rf /var/run/yum.pid 来强行解除锁定,然后你的yum就可以运行了 解释: [ ...

  6. windows下XAMPP安装php_memcache扩展

    windows下XAMPP安装php_memcache扩展 首先下载phpmemcache,地址为: http://up.2cto.com/2012/0522/20120522094758371.ra ...

  7. Android之——清理手机SD卡缓存

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/47375595 眼下,市场上非常多Android手机软件都具有清理SD卡缓存的功能, ...

  8. Pollard-Rho大整数拆分模板

    随机拆分,简直机智. 关于过程可以看http://wenku.baidu.com/link?url=JPlP8watmyGVDdjgiLpcytC0lazh4Leg3s53WIx1_Pp_Y6DJTC ...

  9. Dire Wolf(区间DP)

    Dire Wolf Time Limit: 5000/5000 MS (Java/Others)    Memory Limit: 512000/512000 K (Java/Others)Total ...

  10. POJ 1845-Sumdiv【经典数学题目---求因子和】

    转载请注明出处:http://blog.csdn.net/lyy289065406/article/details/6648539 優YoU  http://user.qzone.qq.com/289 ...