Я попытался выяснить что-то нелепое в пользовательском текстовом виде tablayout. Когда я запускаю приложение, текстовое представление первой вкладки имеет цвет по умолчанию. Однако, когда я просматриваю другие вкладки и вернусь к первой вкладке, она работает правильно. Вот код.Tablayout с пользовательским текстовым просмотром, не изменил выбранный цвет состояния при первом запуске
selector.xml
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true"
android:color="#FFFFFF"/> <!-- selected -->
<item android:color="@color/red_highlight"/> <!-- default -->
</selector>
MainActivity.java
tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(viewPager);
tabLayout.setTabMode(TabLayout.MODE_SCROLLABLE);
tabLayout.getTabAt(0).setCustomView(R.layout.tab_custom_view);
tabLayout.getTabAt(1).setCustomView(R.layout.tab_custom_view);
tabLayout.getTabAt(2).setCustomView(R.layout.tab_custom_view);
tab_custom_view.xml
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tab_tittle"
android:text="Tab1"
android:textStyle="bold"
android:textColor="@color/selector"/>
Ели t, когда я запускаю приложение. после щелчка на других вкладках и возврата к первой вкладке он выбран в выбранном цвете. Но как должно быть, когда я запускаю приложение, первая вкладка выбирается и должна быть в выбранном цвете.
Да, вручную я установил его для параметра SetSelected (true). и он работает нормально. – Vrangle
@ Vrangle, у меня есть эта проблема, и setSelected (true) делает вторую вкладку всегда выбранной. Можете ли вы объяснить, что вы делаете? – offset
вы можете установить выбранное состояние для табуляции с этим кодом: 'tabLayout.getTabAt (0) .getCustomView(). SetSelected (true);' – sweetrenard