Android:如何创建一个类似于单选按钮组的按钮?
问题的原因是需要在Android中创建一个类似单选按钮的按钮组。解决方法是通过在drawable中使用按钮的状态来实现。首先创建一个名为button_selector.xml的文件,其中包含按钮的状态信息。然后将这个drawable文件作为按钮的背景,并在代码中动态创建一个按钮列表。接下来为每个按钮设置OnTouchListener来保持选中状态,并通过一个方法来保持选中状态并将其他按钮设置为未选中状态。
实现步骤如下:
1. 创建一个名为button_selector.xml的drawable文件,用于定义按钮的各种状态。
2. 将button_selector.xml作为按钮的背景。
3. 在代码中创建一个按钮列表,并将XML中的按钮添加到列表中。
4. 为每个按钮设置OnTouchListener,以保持选中状态。
5. 创建一个方法来保持选中状态并将其他按钮设置为未选中状态。
具体实现代码如下:
private var btnList = ArrayList
btnList.add(allBtn)
binding.allBtn.setOnTouchListener { v, event ->
buttonStatePreserver(allBtn)
true
}
fun buttonStatePreserver(button: Button) {
for(btn in btnList) {
if(btn == button) {
btn.isPressed = true
} else {
btn.isPressed = false
}
}
}
通过以上步骤,就可以在Android中创建一个类似单选按钮的按钮组了。
在Android中创建一个类似于单选按钮的按钮的问题是因为用户想要创建一个具有不同状态的按钮,以便在用户点击按钮时,按钮的外观会根据其状态进行变化。解决方法是通过在不同状态下包含单选按钮的相应可绘制对象(即聚焦、按下、选中或正常状态下的可绘制对象)。用户可以在一个名为selector.xml
的文件中指定按钮在不同状态下的外观,并将该XML文件包含在按钮的android:background
属性中。以下是具体的实现步骤:
首先,在文件中定义round_button.xml
的内容如下:
然后,在需要包含该按钮的地方添加以下代码:
这样就可以创建一个类似于单选按钮的按钮了。请注意,在实现中需要自行搜索或从默认文件(.android)中获取圆形按钮的可绘制对象。
至今为止,我还没有找到不使用图像创建单选按钮的方法。所以,我将接受你的答案作为一种替代方法。谢谢。