如何更改选项卡布局中所选选项卡的形状?

时间:2018-03-08 06:01:59

标签: android android-layout android-studio

我想制作圆形选定标签。我已成功通过设置其可绘制背景来制作圆形标签布局,但我想要圆形特定选定标签。

示例屏幕截图

just like same as in this image please see

2 个答案:

答案 0 :(得分:0)

Selector标记用于2种不同的状态

  1. 州选择
  2. 未选择状态

    <selector xmlns:android="http://schemas.android.com/apk/res/android">
       <item android:drawable="@drawable/selected" android:state_selected="true"/>
       <item android:drawable="@drawable/not_selected" android:state_selected="false"/>
    </selector>
    

答案 1 :(得分:0)

我找到了适用于我的解决方案。

tab_selector.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/tab_active" android:state_selected="true"></item>
<item android:drawable="@drawable/default_tab"></item>

custom_tab.xml

 <?xml version="1.0" encoding="utf-8"?>
 <TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/tab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:textColor="@drawable/tab_text_selector"
android:textSize="@dimen/text_12" />

java代码:

TextView tabOne=(TextView)LayoutInflater.from(this).inflate(R.layout.custom_tab, null);
tabOne.setText("TabTitleName");
tabOne.setCompoundDrawablesWithIntrinsicBounds(0, R.drawable.tab_selector, 0, 0);
tabLayout.getTabAt(0).setCustomView(tabOne);