位置: 编程技术 - 正文
推荐整理分享Android点击事件的四种写法(android点击事件传递机制),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:android点击事件的三种方式,android点击事件传递机制,android点击事件处理,android点击事件处理,android点击事件监听,android点击事件onclick用法,android点击事件onclick用法,android点击事件onclick用法,内容如对您有帮助,希望把文章链接给更多的朋友!
Android点击事件的四种写法
一、Android点击事件的四种写法
1、点击事件的第一种写法 . 写一个内部类.实现点击事件的接口
bt.setOnClickListener(new MyButtonListener());
2、点击事件的第二种写法,匿名内部类
bt.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { callPhone(); } });3、点击事件的第三种写法:this-让这个activity实现事件接口,一般测试时候用,正式上线的时候不用。 class Test implements OnClickListener{ @Override public void onClick(View v) { // TODO Auto-generated method stub } }4、点击事件的第四种写法 在xml文件里面定义 button点击的时候 调用什么方法 布局xml配置: android:onClick="dailPhone" 然后在当前Activity中实现该事件的接口,再写一个dailPhone方法, 该方法名字与xml中配置的名字一样,且必须是public,而且要一个View对象, 因为底层的实现是反射且没有getDeclaredMethod() public void dailPhone(View view){ callPhone(); }二、四种事件监听应用场景
a) 内部类方式——注册的事件源比较少b) 匿名内部类方法——事件源又多一点c) 当前activity中this——事件源更多d) 在ui的xml文件中,配置onClick属性(该方法不能设置为private)因为底层的实现-反射没有getDeclaredMethod() ——测试的时候用,实际开发中不用,莫名其妙多的方法。三、代码演示:
package cn.test.phone; import android.net.Uri;import android.os.Bundle;import android.app.Activity;import android.content.Intent;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText; publicclass MainActivityextends Activityimplements OnClickListener { private EditText etDail; /** * activity创建的时候 调用的方法 */ @Override protectedvoid onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //1、设置activity显示的内容:一个xml文件 setContentView(R.layout.phone_ui); //2、通过id寻找控件 etDail = (EditText) MainActivity.this.findViewById(R.id.et_dail); //寻找edittext 界面初始化的时候寻找控件 ,避免多次的查询 Button btDail= (Button)this.findViewById(R.id.bt_dail); //3、给按钮注册一个点击事件的监听器 //点击事件的第一种写法 . 写一个内部类.实现点击事件的接口 //btDail.setOnClickListener(new MyButtonListener()); /*点击事件的第二种写法,匿名内部类 btDail.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { callPhone(); } });*/ /* 点击事件的第三种写法:this-让这个activity实现事件接口,一般测试时候用,正式上线的时候不用。 //btDail.setOnClickListener(this);*/ } // 点击事件的第四种写法 在xml文件里面定义 button点击的时候 调用什么方法 publicvoid dailPhone(View view){ callPhone(); } //方式三:让这个activity实现事件接口,一般测试时候用,正式上线的时候不用。 @Override publicvoid onClick(View v) { callPhone(); } //方式一:点击事件的第一种写法 . 写一个内部类.实现点击事件的接口 /*private class MyButtonListener implements OnClickListener{ *//** * 当按钮被点击的时候调用 *//* @Override public void onClick(View v) { callPhone(); } }*/ privatevoid callPhone() { String phoneNumber = etDail.getText().toString(); Intent intent =new Intent(); //设置意图动作 intent.setAction(Intent.ACTION_CALL); //设置意图数据 //intent.setData(Uri.parse(phoneNumber));//问题i1: intent.setData(Uri.parse("tel:"phoneNumber)); //开启意图 MainActivity.this.startActivity(intent); } }android 控件onClick事件的4种实现方式 1、spanstyle=white-space:pre/spanTextViewtv=(TextView)findViewById(R.id.tv);tv.setOnClickListener(newOnClickListener(){@OverridepublicvoidonClick(Viewarg0){//TODOAuto-generatedmethodstub//dosomething
点击按钮之后仍然显示对话框--Android AndroidDialog,keepdialogopenwhenbuttonispressed?目标:如图点击对话框中确定按钮之后需要判断输入是否为空,如果为空,显示toast,如果输入符合要求,那么dismis
Android UI-开源框架ImageLoader的完美例子(异步加载大量图片) Android开源框架ImageLoader的完美例子很多人都在讨论如何让图片能在异步加载更加流畅,可以显示大量图片,在拖动ListView的时候不会出现卡的现象。关于
标签: android点击事件传递机制
本文链接地址:https://www.jiuchutong.com/biancheng/382274.html 转载请保留说明!友情链接: 武汉网站建设