博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android journey3 @点击事件的4种写法
阅读量:5888 次
发布时间:2019-06-19

本文共 2675 字,大约阅读时间需要 8 分钟。

对于android布局中的控件,如Button等会有相应的点击事件去响应它所需要的功能,今天我们就以电话拨号器的代码说明下几种点击事件:

1 package com.itheima.phone; 2  3 import android.net.Uri; 4 import android.os.Bundle; 5 import android.app.Activity; 6 import android.content.Intent; 7 import android.view.Menu; 8 import android.view.View; 9 import android.view.View.OnClickListener;10 import android.widget.Button;11 import android.widget.EditText;12 import android.widget.Toast;13 14 public class MainActivity extends Activity implements OnClickListener {15     private EditText et_number;16 17     // 当activity被启动的时候 调用的方法.18     @Override19     protected void onCreate(Bundle savedInstanceState) {20         super.onCreate(savedInstanceState);21         setContentView(R.layout.activity_main);22         Button bt_dail = (Button) findViewById(R.id.bt_dail);23         et_number = (EditText) findViewById(R.id.et_number);24         // 点击事件的第一种写法25         bt_dail.setOnClickListener(new DialButtonListener());26 27         // 点击事件的第二种写法.28         bt_dail.setOnClickListener(new OnClickListener() {29             @Override30             public void onClick(View v) {31                 doClick();32             }33         });34         35         //点击事件的第三种写法.36         bt_dail.setOnClickListener(this);37         38 39     }40 41     private void doClick() {42         String number = et_number.getText().toString().trim();43         if ("".equals(number)) {44             Toast.makeText(MainActivity.this, "号码不能为空", Toast.LENGTH_SHORT)45                     .show();46         } else {47             Toast.makeText(MainActivity.this, "拨打:" + number,48                     Toast.LENGTH_SHORT).show();49             Intent intent = new Intent();50             intent.setAction(Intent.ACTION_CALL);51             intent.setData(Uri.parse("tel:" + number)); // tel:11052             // URL : 统一资源定位符 表示一个网络地址 http:// ftp:// rstp://53             // URI : 统一资源标示符 范围更加广泛54             startActivity(intent);55         }56     }57 58     private class DialButtonListener implements OnClickListener {59         @Override60         public void onClick(View v) {61             doClick();62         }63     }64 65     @Override66     public void onClick(View v) {67         switch (v.getId()) {68         case R.id.bt_dail:69             doClick();70             break;71         }72         73     }74     75     //在xml布局文件的配置中,给button添加了属性 android:onClick = “响应函数名”  76     public void btnClick(View view){77         doClick();78     }79 }

 

 点击事件方法总结:

1、直接通过显示的内部类

2、通过匿名内部类

3、通过MainActivity实现OnClickListener:通常在界面中有较多需要响应的控件时使用

4、直接在xml文件中配置对应控件的onClick属性,此种方法通常在测试代码时使用,因为比较不直观,使代码难以维护

 

转载于:https://www.cnblogs.com/allenpengyu/p/3569483.html

你可能感兴趣的文章
hovercard头像悬浮卡效果
查看>>
mysql5.7.18安装
查看>>
进程间通信(共享内存),五种通信方式简单总结
查看>>
NAT技术和代理服务器
查看>>
xmanager远程连接linux配置
查看>>
Linux下Tomcat启动报Can't connect to X11 window server
查看>>
真正从零开始,TensorFlow详细安装入门图文教程!
查看>>
PHP 中 $_FILES
查看>>
spring IOC
查看>>
linux内核升级
查看>>
Linux下vmstat结果详解
查看>>
USE_HASH
查看>>
Linux Eclipse美化:解决工具栏过大和 Javadoc背景色修改
查看>>
Jeesite中shiro的用法讲解
查看>>
svn钩子
查看>>
RabbitMQ安装、配置、基本使用
查看>>
NFS读写块大小分析
查看>>
javascript预编译和处理的问题
查看>>
云计算之openstack-newton版搭建(二)
查看>>
GCC 源码安装
查看>>