本帖最后由 blackangeldsf 于 2022-4-29 11:26 编辑
前几天问了几个问题,都是围绕着如何修改单选框按钮前圆圈颜色的,问题始终没有解决,今天无意中发现了。在此记录下,希望能帮助其他需要的朋友。
我的需求其实很简单,想实现如下图的效果。
火山默认情况下,单选框的颜色好像未选中是白色,选中后是绿色的吧。
要实现上面的效果,目前探索到的两种解决方案,无论哪一种方法,都要提前准备好类似下图的两个样式文件。
(radio_check.png)
(radio_nor.png)
解决方案1:使用xml文件方式 (1)编写以下背景图文件,比如文件名为:“bjt.xml”,此xml文件定义了选中和未选中时,使用的背景样式。内容如下: - <selector xmlns:android="http://schemas.android.com/apk/res/android" >
- <item
- android:drawable="@<font color="Red">drawable</font>/radio_check"
- android:state_checked="true"/>
- <item
- android:drawable="@<font color="Red">drawable</font>/radio_nor"
- android:state_checked="false"/>
- </selector>
复制代码注意红色字体部分,我们需要将按钮图片文件放到这个目录下。
(2)在火山平台中附加外部资源,这样火山在编译时,可以将图片放到drawable目录下。
(3)最后一步,定义图片变量,并设置单选框圆圈背景。搞定。
解决方案2:不使用xml文件,使用命令方式。需要用到“置按钮背景”命令。
(1)以可绘制资源方式导入两张图片,如下图:
(2)使用命令设置按钮圆圈背景
(3)最后一步,通过单选框选中状态事件控制按钮圆圈背景图。搞定。
最后还是有个疑问,就是为何在“置按钮背景”命令中直接使用颜色就不行呢?谁能给小弟解答下,感激不尽!
|