关机是线条内部的背景色变了
用StateDrawable做TabSpec的indicator view的背景
点击以后更改下背景颜色
有个取巧的办法,用3个图片。每个图片都包括3个按钮
其实不是很简单的背景吗?
未被点击的状态是只有纯粹的线框围住的透明背景图
点击或者激活状态下是线框围住的蓝色背景图。
当然这种用图片比较浪费,可以尝试使用shape去设置背景。大概就是这种样子
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_enabled="true" >
<shape
android:shape="rectangle" >
<stroke
android:width="1dp"
android:color="#33000000"
/>
<solid
android:color="#11AEAEAE"
/>
<!-- 设置矩形的四个角为弧形 -->
<!-- android:radius 弧形的半径 -->
<corners android:radius="5dip" />
</shape>
</item>
</selector>
ul{height:45px;display:block;line-height:45px;background:边框颜色;padding:1px 0 1px 1px;box-sizing:border-box;}
li{bakcground:初始颜色;}
li.on{background:状态色;}
简单点说也就是背景为边框.
可以使用Shape布局。
你可以看一下下面的开源项目的做法。
https://github.com/7heaven/SHSegmentControl