使用边框创建一个圆角复选框

时间:2016-10-08 06:15:10

标签: android xml checkbox drawable

这就是我用边框创建一个四舍五入的checkbox的方法。但是寄宿生是方形的,而不是圆形。

复选框

<CheckBox
            android:id="@+id/checkBox"
            android:paddingTop="15dp"
            android:paddingRight="25dp"
            android:layout_width="25dp"
            android:layout_marginLeft="320dp"
            android:layout_height="25dp"
            android:button="@drawable/xml_button"
            android:background="@drawable/xml_background"/>

xml_button

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="true">
        <shape android:shape="oval">
            <solid android:color="#00FF00" />
            <size
                android:width="24dp"
                android:height="24dp" />
        </shape>
    </item>
    <item android:state_checked="false">
        <shape android:shape="oval">
            <solid android:color="#AAA" />
            <size
                android:width="24dp"
                android:height="24dp" />
        </shape>
    </item>
</selector>

xml_background

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <corners android:radius="3dp" />
    <stroke
        android:width="2dp"
        android:color="#CCC" />
    <padding
        android:left="34dp"
        android:top="5dp"
        android:right="10dp"
        android:bottom="5dp" />
</shape>

输出

enter image description here

非常感谢任何帮助。谢谢。

1 个答案:

答案 0 :(得分:1)

在单选按钮中使用此xml作为背景.....

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape android:shape="oval">
            <stroke android:color="#1E90FF" android:width="10dp" />
            <solid android:color="#87CEEB"/>
        </shape>
    </item>
</selector>

注意: - 我认为您的问题是由于round.xml中的填充

而发生的
  

未选中时输出...

e01

  

检查时输出......

gd