我已经在我的自定义 View 中添加了选项卡布局,如下所示
java代码
for (int i = 0; i < allTabs.getTabCount(); i++) {
TabLayout.Tab tab = allTabs.getTabAt(i);
View v = LayoutInflater.from(getActivity()).inflate(R.layout.tab_layout, allTabs, false);
tvTabText = (TextView) v.findViewById(R.id.tab_title);
View view = (View) v.findViewById(R.id.deviderView);
tvTabText.setText(tab.getText());
tab.setCustomView(v);
if (i == 0) {
view.setVisibility(View.GONE); // Hide last devider
}
}
XML
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<!-- Tab title -->
<TextView
android:id="@+id/tab_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:gravity="center_horizontal"
android:text="sdasd"
android:padding="10dp"
android:textStyle="bold"
android:textColor="@drawable/tab_item_selector"
android:textSize="@dimen/text_size_normal" />
<!-- Tab divider -->
<View
android:id="@+id/deviderView"
android:layout_width="1dp"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_marginBottom="15dp"
android:layout_marginTop="15dp"
android:background="@android:color/white"
android:gravity="right" />
tab_item_selector.xml
<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:color="@android:color/white" />
<item android:state_focused="true" android:color="@android:color/white" />
<item android:state_pressed="true" android:color="@android:color/white" />
<item android:color="#82c6e6" />
我已经选择了第一个标签
allTabs.addTab(allTabs.newTab().setText("CURRENT YEAR"),true);
也试试
if (i == 0) {
view.setVisibility(View.GONE);
tab.select();
}
在自定义 View 中。
我也试试
allTabs.setTabTextColors(normal,selected);
这是我的 TabLayout
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/master_color"
app:tabMode="scrollable"
app:tabPaddingEnd="0dp"
app:tabPaddingStart="0dp"/>
compile 'com.android.support:appcompat-v7:23.3.0'
compile 'com.android.support:design:23.3.0'
一旦 View 出现,我点击 forst 选项卡,然后选项卡将显示白色文本,但是当我释放时,然后每次在文本变为正常颜色后按下。 如果我单击第二个选项卡,然后单击第一个选项卡,它将作为一个方面正常工作。
总是加载第一个选项卡,但我无法获得第一个选项卡(选择选项卡时我想要的是白色文本)
最佳答案
你可以在你的 tabLayout 中试试这个:
app:tabTextColor="@color/gray"
app:tabSelectedTextColor="@color/white"
关于android - 选择器不适用于 TabLayout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37153749/