Android_Button按键点击事件
2019-09-27 本文已影响0人
书虫大王X
一.Button的基本属性:
Button继承了TextView,所以TextView有的属性,Button具有TextView的基本属性,点击查看TextView的基本属性。
Button属性:
属性 | 作用 |
---|---|
text | 设置显示的文本 |
onClick | 设置点击事件 |
state_enabled | 能够接受触摸或者点击事件 |
state_window_focused | 应用程序是否在前台,当有通知栏被拉下来或者一个对话框弹出的时候应用程序就不在前台了 |
注意:在xml文件中设置了onClick属性后,在MainActivity中必须实现对应的方法:
二.给Button添加添加监听方法有很多种,常用的有以下四种:
1.添加xml类
2.匿名内部类
3.外部类(独立类)
4.实现OnClickListener接口
三、具体实现:
1.添加xml类:
给XML添加一个onClick属性来实现点击事件的监控,这样的好处是:更加便捷,代码量能够减少;不足的地方是:每一次维护的时候都要去XML里面改源码。
xml文件 MainActivity2.匿名内部类:
这样使用的好处是:
- 不需要重新写一个类,直接在new的时候去实现想实现的方法,很方便。
- 当别的地方都用不到这个方法的时候使用匿名内部类
- 高内聚,高内聚是设计原则之一,匿名内部类的特性之一就是拥有高内聚。
但是也有不足的地方: - 当别的地方也需要同样的一个方法时还要重新再在那个地方写一次匿名内部类,这样使得代码的冗余性很高。
- 不方便后期的维护
lambda表达式
3..外部类(独立类):
写一个独立的类来实现业务逻辑或是想要的效果
这样写的好处是:
- 一定情况下可以方便维护
- 可以降低代码的冗余性,可以同时使用到多个地方
不足的地方是:
- 当只使用一次时浪费资源,程序的性能不高
- 当有很多个方法时代码的可读性不高,此时不方便维护
4.实现OnClickListener接口:
MainActivity四、给视图添加点击事件:
我们不但可以给Button按键添加点击事件,也可以给视图添加点击事件,方法与给Button添加点击事件差不多,例如:
使用匿名类给View添加点击事件