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

问题描述 投票:1回答:2

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

示例截图

android android-layout android-studio
2个回答
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>

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);
© www.soinside.com 2019 - 2024. All rights reserved.