您的位置:首页 > 其它

动手去实现一个页面切换TabView

2017-06-29 11:38 197 查看
首先上效果图





颜色切换就不提了,首先考虑两侧按钮的圆角,左侧应是左上、左下圆角,右侧反之,于是

左侧Shape文件中

<corners
android:bottomLeftRadius="5dp"
android:bottomRightRadius="0dp"
android:topLeftRadius="5dp"
android:topRightRadius="0dp" />


右侧Shape文件中

<corners
android:bottomLeftRadius="0dp"
android:bottomRightRadius="5dp"
android:topLeftRadius="0dp"
android:topRightRadius="5dp" />


当然这个角度可以选择自己顺眼的

然后考虑描边,左侧应为上下左描边,右侧应为上下右描边,当初是这样考虑的,虽然出来的效果并不好

先考虑如何实现吧,描边还可以指定哪条边吗? 可以这样去实现!

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:bottom="0dp"
android:left="0dp"
android:right="-1dp"
android:top="0dp">
<shape>
<!-- 描边颜色 -->
<stroke
android:width="1dp"
android:color="#a6a6a6" />
<!-- 中间的背景色 -->
<solid android:color="#FFFFFF" />
<!-- 直角设置四个角的角度 -->
<corners android:bottomLeftRadius="5dp" android:bottomRightRadius="0dp" android:topLeftRadius="5dp" android:topRightRadius="0dp" />
</shape>
</item>
</layer-list>


使用layer-list ,虽说描边没有变化,但是我们可以选择把不需要的部分去掉

这样通过四个配置文件就可以实现这样的一个控件

这里只是提出了思路,有需要的话自己去实现。

有时间的话我可能会将其做成一个控件发到 github

那本篇文章到此结束,谢谢浏览。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: