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

1、设置按钮的单击事件的监听器,创建匿名内部类
        bt_call.setOnClickListener(new OnClickListener() {
            
            @Override
            public void onClick(View v) {
                //拨打电话号码
                String phone = et_phone.getText().toString().trim();
                Intent intent = new Intent();
                
                intent.setAction(Intent.ACTION_CALL);
                System.out.println("phone="+phone);
                intent.setData(Uri.parse("tel://"+phone));
                startActivity(intent);
            }
        });

2、创建一个内部类
    private class MyOnClickListener implements OnClickListener{

@Override
        public void onClick(View v) {
            //拨打电话号码
            String phone = et_phone.getText().toString().trim();
            Intent intent = new Intent();
            
            intent.setAction(Intent.ACTION_CALL);
            System.out.println("phone="+phone);
            intent.setData(Uri.parse("tel://"+phone));
            startActivity(intent);            
        }
        
    }

//别忘记给按钮添加一个单击事件的监听器
    bt_call.setOnClickListener(new MyOnClickListener());

3、在布局文件中给按钮添加一个单击事件的响应方法,然后在代码中实现这个方法
    (1)在布局文件中给按钮添加一个单击事件的响应方法
        <Button
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:text="拨打"
       android:id="@+id/bt_call"
       android:onClick="call"
      />

(2)在代码中实现这个方法
    //view 表示的是按钮这个视图
    public void call(View view){
        //拨打电话号码
        String phone = et_phone.getText().toString().trim();
        Intent intent = new Intent();
        
        intent.setAction(Intent.ACTION_CALL);
        System.out.println("phone="+phone);
        intent.setData(Uri.parse("tel://"+phone));
        startActivity(intent);        
    }

.四种方法写按钮点击事件

1.匿名内部类的方式
        2. 创建一个类实现onclickListener,实现onclick方法,设置控件点击事件时传一个类的对象。
        3. 让当前类实现onclickListener,设置控件点击事件时传一个this。这种方式适合按钮比较多的情况,一般在公司采用该方式。
        4. 在布局文件中为控件添加一个onclick属性,在布局对应的Activity中写一个一onclick属性值为名的方法,要public,传一个View类型的参数。比较适合做简单的测试。

android中的4种点击事件的更多相关文章

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

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

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

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

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

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

  4. Android 组件的三种点击事件写法

    一.准备工作 1.项目结构 2.布局文件(activity_main.xml) <?xml version="1.0" encoding="utf-8"? ...

  5. 关于android中,菜单按钮点击事件首次执行之后再次执行需要双击按钮的问题

    有时候在获取事件的时候,需要双击才能获取,解决方法很简单,把返回值设为true,那么这个事件就不会再分发了,我预计是设为其他值会继续分发,造成事件的相应混乱

  6. Android Button的四种点击事件

    bta1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.m ...

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

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

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

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

  9. iOS中UITableView的cell点击事件不触发didSelectRowAtIndexPath(汇总)

    iOS中UITableView的cell点击事件不触发didSelectRowAtIndexPath 首先分析有几种原因,以及相应的解决方法 1.UITableViewCell的userInterac ...

随机推荐

  1. win32进阶必备:多线程同步之互斥锁

    应用多线程互斥锁之前首先简单过一下C程序可能用到的3个创建线程函数: CreateThread,windows系统提供的唯一创建线程API,_beginthread和_beginthreadex都在内 ...

  2. 使用ApplicationLoader中出现报错:The IPA is invalid. It does not inlude a Payload directory

    问题处理方法: 1.将achieve的.app后缀的软件包放在一个payload的文件夹中 2.压缩该文件夹,改变.zip后缀为.ipa 3.使用applicationLoader上传该文件  

  3. iis启动网站提示 文件正在使用

    通常是端口被占用,使用netstat -ano,查看占用的进程pid,结束

  4. powershell.exe直接运行命令

    powershell.exe -Command "& { ('time={0},user={1}' -f (get-date),(whoami)) | Out-File " ...

  5. Lync安装随笔

    使用域管理员权限扩展架构 1.iis角色安装 2.net3.5,消息队列服务器.目录服务集成.桌面体验.AD DS和AD LDS工具(远程服务管理工具中),启用WindowsFirewall服务 3. ...

  6. [Bootstrap] 4. Typogrphy

    What is Typography When we talk about typography, it's a big subject! Which of the following fall un ...

  7. hibernate uniqueResult方法

    假设查询返回多个值用list()方法 public void testQuery(){ Configuration config = new Configuration().configure(); ...

  8. sessionID和cookie

    一.cookie机制和session机制的区别***************************************************************************** ...

  9. linux僵死进程的产生与避免

      作者:lingdxuyan来源:ChinaUnix技术博客,本文版权由lingdxuyan所有,如需转载,请注明出处. 一个进程在调用exit命令结束自己的生命的时候,其实它并没有真正的被销毁, ...

  10. javascript中的 "=="

    对象之间比较比较的是引用地址 对象和其他比较,转成字符串 字符串和数字比较,字符串转成数字 布尔值和任何比较,转成数字 undefined == null NaN 和谁都不相等 javascript权 ...