图层列表忽略 <size> 标签

4

我想创建一个自定义的单选按钮。

我使用了<selector><layer-list>来显示大圆上的小圆,当用户选择它时。

但是似乎完全忽略了<size>标签!

我的代码如下:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="false">
    <shape>
        <size android:width="40dp" android:height="40dp"></size>
        <corners android:radius="5dp"></corners>
        <solid android:color="@color/blue"/>
    </shape>
</item>
<item android:state_checked="true">
    <layer-list>
        <item>
            <shape>
                <size android:width="40dp" android:height="40dp"/>
                <corners android:radius="5dp"/>
                <solid android:color="@color/blue"/>
            </shape>
        </item>
        <item>
            <shape>
                <size android:width="20dp" android:height="20dp"/>
                <corners android:radius="5dp"/>
                <solid android:color="@color/white"/>
            </shape>
        </item>
    </layer-list>
</item>

1个回答

10

我经常遇到这个问题,而且我唯一找到的解决方案是:

<item android:left="10dp" android:right="10dp" android:top="10dp" android:bottom="10dp">
    <shape>
        <solid android:color="@color/blue"/>
    </shape>
</item>

如果您有更好的解决方案,请回答!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接