Android的按钮单击事件及监听器的实现方式

第一种:匿名内部类作为事件监听器类

第二种:内部类作为监听器

第三种:Activity本身作为事件监听器

第四种:外部类作为监听器

当用户单击button按钮时,程序将会触发MyButtonListener监听器
外部MyButtonListener类

使用顶级类定义事件监听器类的形式比较少见,主要因为如下两个原因:
1、事件监听器通常属于特定的gui界面,定义成外部类不篮球提高程序的内聚性。
2、外部类形式的事件监听器不能自由访问创建gui界面的类中的组件,编程不够简洁。
但如果某个事件监听器确实需要被多个gui界面所共享,而且主要是完成某种业务逻辑的实现,则可以考虑使用外部类的形式来定义事件监听器类。
第五种:直接绑定到标签
Android还有一种更简单的绑定事件监听器的的方式,直接在界面布局文件中为指定标签绑定事件处理方法。
对于很多Android标签而言,它们都支持如onClick、onLongClick等属性,这种属性的属性值就是一个形如xxx
(View source)
的方法的方法名。在布局文件中为button添加属性,如一代码:

为Button按钮绑定一个事件处理方法:clickHanlder,这意味着开发者需要在该界面布局对应的Activity中定义一个void clickHanler(View source)方法,该方法将会负责处理该按钮上的单击事件。
下面是该界面布局对应的java代码:

参考:http://www.apkbus.com/android-18459-1-1.html

Android的按钮单击事件及监听器的实现方式,布布扣,bubuko.com

时间: 2024-11-21 02:39:24

Android的按钮单击事件及监听器的实现方式的相关文章

Android onClick 按钮单击事件 四种常用写法

这里使用四种onClick单击事件,来实现电话拔号器的DEMO. XML文件 <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:inputType="phone" android:ems="10" android:id="@+id/et_number" android:l

Android按钮单击事件的五种实现方式

匿名内部类作为事件监听器 public class MainActivity extends Activity { private Button button; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button = (Button) findViewById

Android按钮单击事件

1.获取代表控件的对象 2.定义一个类,实现监听器接口 3.生成监听器对象 4.为控件绑定监听器对象 button1 = (Button)findViewById(R.id.button1); //获取XMl中控件id button1.setOnClickListener(new OnClickListener() //生成监听器对象并且直接与控件绑定 { public void onClick(View v) //按钮单击事件 { editText1.setText("Yes!");

Android按钮单击事件的四种常用写法总结

很多学习Android程序设计的人都会发现每个人对代码的写法都有不同的偏好,比较明显的就是对控件响应事件的写法的不同.因此本文就把这些写法总结一下,比较下各种写法的优劣,希望对大家灵活地选择编码方式可以有一定的参考借鉴价值. xml文件代码如下: ? 1 2 3 4 5 6 7 8 9 10 11 <Button     android:id="@+id/button1"     android:layout_width="wrap_content"     

Android按钮单击事件的四种常用写法

很多学习Android程序设计的人都会发现每个人对代码的写法都有不同的偏好,比较明显的就是对控件响应事件的写法的不同.因此本文就把这些写法总结一下,比较下各种写法的优劣,希望对大家灵活地选择编码方式可以有一定的参考借鉴价值. 四种方法分述如下: 匿名内部类: public class TestButtonActivity extends Activity { Button btn1, btn2; Toast tst; @Override protected void onCreate(Bundl

Android代码规范----按钮单击事件的四种写法

[前言] 按钮少的时候用第三种的匿名内部类会比较快,比如写demo测试的时候或者登陆界面之类. 按钮多的时候一般选择第四种写法. 一.第一种写法:在XML文件中指定(很少用) 在XML文件中显式指定控件的onClick属性,点击按钮时会利用反射的方式调用对应Activity中的onClick()方法. (1)xml文件代码如下: 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2

Android学习:单击事件onClickListener

一:看程序 二:总结    单击事件onClickListener三种方式: (1)动态设置方式            button1.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Toast.makeText(MainActivity.this, "我是动态button", Toast.LENGTH_SHORT).show(); } }); (2)配置方式    

js文本框失去焦点事件与按钮单击事件的冲突问题

<input type="text" id="txt" name="txt"/> <input type="button" name="btn" id="btn" value="确定"/> <script type="text/javascript"> document.getElementById("

xib 不响应按钮单击事件问题

在IPhone 6上,单击下个月按钮不响应的解决方法, self.width = SCREEN_WIDTH;//这个必须,否则IPhone6上,下个月按钮不响应. self.titleLabel.width = SCREEN_WIDTH - self.backButton.width - self.forwardButton.width; self.forwardButton.left = SCREEN_WIDTH - self.forwardButton.width;