Android 点击事件,4种回调。
1. 继承监听接口。
2. xml方式 : 设置 android:onClick
3. 内部类
4. 匿名类
---------------------------------------------------------------
1. 实现 OnClickListener 接口
package com.itheima28.caller; import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText; /**
* @author andong
* 程序刚运行就显示的界面
*/
public class MainUI4 extends Activity implements OnClickListener { /**
* 当界面刚被创建时回调此方法
*/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); // 必须执行此句代码. 执行父类的初始化操作. setContentView(R.layout.main); // 设置当前界面显示的布局. // 关联方法
Button btnCall = (Button) findViewById(R.id.btn_call);
// 注册监听
btnCall.setOnClickListener(this);
} //
// 如果用内部类,则外部类,不需要实现OnClickListener 接口
// class MyOnClickListener implements OnClickListener {
//
// @Override
// public void onClick(View v) {
// System.out.println("MainUI3 拨打号码..");
// call();
// }
// } /**
* 拨打电话的业务方法
*/
private void call() { // 1. 取出输入框中的号码
EditText etNumber = (EditText) findViewById(R.id.number); // 输入框对象
String number = etNumber.getText().toString(); // 将要拨打的号码 // 2. 根据号码拨打电话
Intent intent = new Intent(); // 创建一个意图
intent.setAction(Intent.ACTION_CALL); // 指定其动作为拨打电话
intent.setData(Uri.parse("tel:" + number)); // 指定将要拨出的号码
startActivity(intent); // 执行这个动作
} @Override
public void onClick(View v) {
System.out.println("MainUI4 拨打号码..");
call();
}
}
2 . xml的方式
在布局文件xml,添加onClick事件,然后,从代码中,
<Button
android:id ="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_contetn"
android:text="单击"
android:onClick="clicktest" //添加事件
/>
从代码中,添加clicktest方法,原型,要和View.OnClickListener中没有实现的原型一样,即添加 (View v)的方法参数
// 方法的原型,与 OnClickListener 中定义的方法原型,一致。
public void clicktest(View view){ Log.i("Test","以xml方式,设置事件")
}
3. 内部类
这种方式,容易理解。
// 1. 声明控件
private Button btn; @override
protected void onCreate(Bundle savedInstanceState) {
supper.onCreate(savedInstanceState); setContentView(R.layou.activity_main); // 2. 关联控件
btn =(Button)findViewById(R.id.button1); Listener list = new Listener();
// 3. 注册监听
btn.setOnClickListener(
//实现接口的类对象
list
);
} //内部类
class Listener implements View.OnClickListener { @override
public void onClick(View v){
//回调方法
Log.i("TEST","被单击了");
} }
Android 点击事件,4种回调。的更多相关文章
- android点击事件的四种方式
android点击事件的四种方式 第一种方式:创建内部类实现点击事件 代码如下: package com.example.dail; import android.text.TextUtils; im ...
- Android中点击事件的四种写法详解
Android中点击事件的四种写法 使用内部类实现点击事件 使用匿名内部类实现点击事件 让MainActivity实现View.OnClickListener接口 通过布局文件中控件的属性 第一种方法 ...
- Android点击事件通过kotlin几种实现方式总结
一般来说,Android点击事件通过kotlin有以下几种实现方式: 1.通过全局接口View.OnClickListener实现,代码如下 //class MainActivity : AppCom ...
- Android点击事件
Android点击事件 备注 全局实现View.OnClickListener 或许需要将MainActivity设置为public 注册事件 btn_login.setOnClickListener ...
- Android笔记——Button点击事件几种写法
Button点击事件:大概可以分为以下几种: 匿名内部类 定义内部类,实现OnClickListener接口 定义的构造方法 用Activity实现OnClickListener接口 指定Button ...
- Android学习-----Button点击事件几种写法
Button点击事件:大概可以分为以下几种: 匿名内部类 定义内部类,实现OnClickListener接口 定义的构造方法 用Activity实现OnClickListener接口 指定Button ...
- [Android] 点击事件的四种写法
点击事件的必备条件:实现OnClickListener接口,重写onclick(View v)方法 以拨号简单案例为例,如下图效果: 逻辑流程: 获取点击对象,获取数据 给对象设置监听类 实现OnCl ...
- Android studio代码实现打电话+点击事件四种方式
Android系统架构(重点) 第一层:应用层Application 第二层:应用框架层Application Framework 第三层:Android底层类库层 Libraries.Dalvik虚 ...
- Android点击事件(click button)的四种写法
在学习android开发和测试的时候发现不同的人对于click事件的写法是不一样的,上网查了一下,发现有四种写法,于是想比较一下四种方法的不同 第一种方法:匿名内部类 代码: package com. ...
- android中点击事件的4种写法
android中获取到一些控件(比如说按钮)时,一般会为其添加点击事件,android中的点击事件一共有4中写法. 假设在布局文件中声明如下 ....... <Button android:la ...
随机推荐
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(1)-前言与目录(持续更新中...)
转自:http://www.cnblogs.com/ymnets/p/3424309.html 曾几何时我想写一个系列的文章,但是由于工作很忙,一直没有时间更新博客.博客园园龄都1年了,却一直都是空空 ...
- MySqlCommand, MySqlParameter and "LIKE" with Percent Symbol
//Wrong way MySqlCommand cmd = oldDb.GetSqlStringCommand(CommandType.Text,"SELECT * _ FROM user ...
- Intersoft Mobile Studio 2013 R1 SP1 Crack
Intersoft Mobile Studio 2013 R1 SP1 (iOS, Android & WinR) Leave a comment tweet inShare ...
- Android Monkey
adb shell "monkey -c android.intent.category.LAUNCHER -c android.intent.category.MONKEY -c andr ...
- [leetcode]重建二叉树(先序和终须) 中序遍和后续
分割后长度相等,就是参数麻烦,p,先序的起始点, ib,ie 终须的结束和开始. /** * Definition for binary tree * public class TreeNode { ...
- JavaScript高级程序设计26.pdf
DOM操作技术 动态脚本 指得是页面加载时不存在,但将来的某一时刻通过修改DOM动态添加的脚本,跟操作HTML元素一样,创建动态脚本也有2种方式:插入外部文件和直接插入JavaScript代码 var ...
- 用 localhost 访问正常,替换成 IP ,部分 CSS 或 JS 就失效了
这应该是浏览器的兼容性问题. 经测试,只要不是360浏览器的兼容模式,将 localhost 替换成 IP 无影响. 来自为知笔记(Wiz)
- 关于附件控件隐藏后,在IE下不能上传,报“拒绝访问”
报错时的使用: @Html.TextBoxFor(m => m.FileName, new { style = "width:457px;", @readonly = &qu ...
- 设置button 不可被点击
mGetCode.setEnabled(false);//不可被点击 mGetCode.setEnabled(true);//可被点击 bt.setClickable(true);//设置点击为tru ...
- 手机变为电脑的摄像头,使像素高清起来-使用DroidCam
你是不是已经在嫌弃电脑自带的摄像头的渣渣像素呢? 今天给大家安利一个方法:将手机摄像头设置为电脑的摄像头,让像素高清起来,对于搞图像的同志们真是福音啊,尤其是做人脸识别的时候. 方法有很多种,我推荐我 ...