Android 控件中事件响应的三种实现方式
来源:互联网 发布:同步带长度计算软件 编辑:程序博客网 时间:2024/06/13 02:02
平时做项目或学习中,经常编写控件的响应事件,大致有三种方式来实现,如下:
1. 匿名内部类的形式,据说好像这样写显得编写代码很NB,很多人推荐这种方式,不过我不这么认为,该不懂还是不懂,又显得代码臃肿,不推荐。
2. 内部类的形式,不推荐。
3. 实现接口的方式,推荐。
下面是3种方式的实现demo:
import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.Toast;/** * 控件响应的三种实现方式 * 以button的Onclick事件为例说明 * */public class RespondWidgetActivity extends Activity implements OnClickListener{//代表匿名内部类的buttonprivate Button btn_response_anonyous = null;//代表内部类的buttonprivate Button btn_response_innerclass = null;//代表实现接口的buttonprivate Button btn_response_interface = null;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//加载显示viewsetContentView(R.layout.activity_respond);//初始化控件信息initView();}/** * 初始化控件信息 * */private void initView(){/** 匿名内部类的方式 */btn_response_anonyous = (Button)findViewById(R.id.btn_response_anonymous);btn_response_anonyous.setOnClickListener(new OnClickListener() {//匿名内部类@Overridepublic void onClick(View v) {Toast.makeText(RespondWidgetActivity.this, "这是匿名内部类的实现方式!", Toast.LENGTH_LONG).show();}});/** 私有内部类的方式 **/btn_response_innerclass = (Button)findViewById(R.id.btn_response_innerclass);btn_response_innerclass.setOnClickListener(new onclick_innerclass());/** 实现接口的方式 推荐**/btn_response_interface = (Button)findViewById(R.id.btn_response_interface);btn_response_interface.setOnClickListener(this);}/** * 内部类,实现 OnClickListener接口 **/private class onclick_innerclass implements OnClickListener{@Overridepublic void onClick(View v) {Toast.makeText(RespondWidgetActivity.this, "这是私有内部类的实现方式!", Toast.LENGTH_LONG).show();}}/** * 实现OnClickListener接口 */@Overridepublic void onClick(View v) {switch(v.getId()){case R.id.btn_response_interface:{Toast.makeText(RespondWidgetActivity.this, "这是采用实现接口的方式!", Toast.LENGTH_LONG).show();break;}default:break;}}}
备注:留着备用。
- Android 控件中事件响应的三种实现方式
- 【Android】控件和基本事件响应的三种方式
- 【Android】控件和基本事件响应的三种方式
- android响应事件的三种方式
- ANDROID控件添加事件响应的三种方法
- android响应事件(按钮)的三种方式
- android响应事件(按钮)的三种方式
- Swing中添加事件响应的三种处理方式
- android 事件响应的四种实现方式
- android中对单机事件响应的三种情况
- Android开发中控件的三种点击事件+短信API调用方式
- 安卓笔记android中控件点击事件实现的几种方式
- android按键的三种响应方式
- android 控件onClick事件的4种实现方式
- 在反射中实现用户自定义控件的事件响应
- Swing中添加事件响应的三种处理方式说明
- Android 之 常见事件响应的实现方式对比
- Android之常见事件响应的实现方式
- 修改manager server端口与appserver rest端口
- QT环境下的多线程下载实现
- MFC读取多文件与文件夹
- 如何成为好的程序员
- BES 503上查看 http 访问情况
- Android 控件中事件响应的三种实现方式
- 在Drupal当中,如何实现初始页面的帮助提示(Overlay help tips)?
- jquery扩展 详细(包含一些高级使用)
- 中国各省所处的经纬度范围
- 资源整合---------------------------MyHao123
- 基于51单片机实现模拟IIC总线时序
- stm32篇--小车循迹
- 考研相关内容
- Git初级使用教程