我制作了一个 tablayout 选项卡,它具有选项卡的自定义布局,有时我希望更改这些选项卡的标题。但我没有得到正确的方法,请帮助我。
我的custom_tab.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/titttle"
android:textStyle="bold"
android:text="MYTITLE"
android:paddingLeft="10dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/count"
android:textStyle="bold"
android:text="1"
android:paddingLeft="10dp"/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
并在MainActivity.java 中
tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(viewPager);
tabLayout.getTabAt(0).setCustomView(R.layout.tab_custom_view);
tabLayout.getTabAt(1).setCustomView(R.layout.tab_custom_view);
TextView textView = (TextView)tabLayout.getChildAt(1).getRootView().findViewById(R.id.titttle);
textView.setText("New Title");
Run Code Online (Sandbox Code Playgroud)
这里
TextView textView = (TextView)tabLayout.getChildAt(1).getRootView().findViewById(R.id.titttle);
textView.setText("New Title");
Run Code Online (Sandbox Code Playgroud)
不工作,帮我更新自定义选项卡的文本视图。
android-fragments android-activity android-tablelayout android-tabs android-design-library
我试图在tablayout的自定义textview中找出一些荒谬的东西.当我启动应用程序时,第一个选项卡的textview是默认颜色,但是当我浏览其他选项卡并返回到第一个选项卡时,它可以正常工作.这是代码.
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>
Run Code Online (Sandbox Code Playgroud)
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);
Run Code Online (Sandbox Code Playgroud)
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"/>
Run Code Online (Sandbox Code Playgroud)
启动应用程序时,第一个选项卡是默认颜色.单击其他选项卡并返回到第一个选项卡后,它将处于选定的颜色.但是应该如何,当我启动应用程序时,第一个选项卡被选中,并且应该是选定的颜色.