1.简介
用户界面元素,用户可以点击或点击以执行操作。
2.常见使用
2.1 添加点击事件
findViewById<Button>(R.id.btn_admin).setOnClickListener {}
2.2 内容是否大写
android:textAllCaps = false
默认是 true
2.3 设置点击效果
创建 点击效果的 selector_btn_bg.xml 文件
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@android:color/white"/>
<item android:drawable="@android:color/black"/>
</selector>
设置点击效果
android:background="@drawable/selector_btn_bg"
3.常见业务
3.1 防止重复点击
private const val CLICK_WAIT_TIME = 500L
private val map = mutableMapOf<Int, Long>()
infix fun View.clickWait(clickAction: () -> Unit) {
this.setOnClickListener {
val curTime = System.currentTimeMillis()
val lastTime = map[hashCode()] ?: 0L
if (lastTime == 0L) {
clickAction()
map[hashCode()] = curTime
} else {
if (curTime - lastTime > CLICK_WAIT_TIME) {
clickAction()
map[hashCode()] = curTime
}
}
}
}
3.2 水波纹效果
【Android-Activity】Button的常用方法及水波纹的效果