我正在使用SlidingTabs
创建两个选项卡。选项卡的用户界面应该像这样:
当选择第一个选项卡时
当选择第二个选项卡时
(请注意蓝色矩形的直角)
我正在使用以下选择器来创建上述UI。
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Active tab -->
<item android:state_selected="true" android:state_focused="false"
android:state_pressed="false" android:drawable="@drawable/round_corner_rectangle" />
<!-- Inactive tab -->
<item android:state_selected="false" android:state_focused="false"
android:state_pressed="false" android:drawable="@android:color/transparent" />
<!-- Pressed tab -->
<item android:state_pressed="true" android:state_selected="true" android:drawable="@drawable/round_corner_rectangle" />
<item android:state_pressed="true" android:state_selected="false" android:drawable="@color/transparent" />
<!-- Selected tab (using d-pad) -->
<item android:state_focused="true" android:state_selected="true"
android:state_pressed="false" android:drawable="@android:color/transparent" />
</selector>
round_corner_rectangle
的代码如下:
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners android:radius="5dp"/>
<solid android:color="@color/login_background" />
</shape>
login_background
是深蓝色。使用上述代码,我得到了以下内容 -
当然,我可以从 round_corner_rectangle
中删除 corner
来使深蓝色背景变直而不是圆的。但如果我在另一个选项卡被选择时让蓝色矩形的右侧变直,那么矩形的角就会在错误的一侧变成圆形。
我该怎么做才能得到第一张图片所示的 UI?
更新: 由于您可以从我的代码中看出来,我没有创建圆角的问题,问题在于选定选项卡后需要将角变成直线。如果我只是简单地添加圆角,当第二个选项卡被选中时,角就会在错误的一侧变成圆形。