RadioButton点击带下划线效果

RadioButton点击带下划线效果

在开发中,咱们常常会要实现一个RadioGroup中点击某个按钮,而后去实现某个操做,这个时候要一个选中状态的标示,不少时候是在下面加一个横线,效果以下:
这里写图片描述
那怎样经过xml文件来实现这个效果:
首先,咱们确定须要一个selector,关键是怎么在selector来实现下面的横线,首先咱们须要给radiobutton一个固定的高度,好比48dp,而后要使用到layer-list,layer-list是用来叠加多个效果的,这里咱们只有一个效果,在layer-list中,咱们使用shape来实现横条,而且让他距离top44dp,这样横线的高度就是4dp,而且在下方显示。最终整个xml文件代码以下:android

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >

    <item android:state_checked="true">
        <layer-list>

            <item android:top="44dp">

                <shape android:shape="rectangle" >
                    <solid android:color="#ff0000" />
                </shape>
            </item>
        </layer-list>
    </item>

    <item android:drawable="@color/transparent"></item>

</selector>

最后在radiobutton中设置android:background便可。web