小编Vra*_*gle的帖子

Tablayout 更新自定义视图选项卡的页面标题

我制作了一个 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

5
推荐指数
1
解决办法
6542
查看次数

具有自定义textview的Tablayout在首次启动时未更改选定的状态颜色

我试图在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)

启动应用程序时,第一个选项卡是默认颜色.单击其他选项卡并返回到第一个选项卡后,它将处于选定的颜色.但是应该如何,当我启动应用程序时,第一个选项卡被选中,并且应该是选定的颜色.

android textview android-layout android-tablayout

4
推荐指数
1
解决办法
4466
查看次数