代码之家  ›  专栏  ›  技术社区  ›  java

设置选项卡的文本颜色[重复]

  •  0
  • java  · 技术社区  · 8 年前

    为什么我无法设置tablayout的textcolor?

    这是整个xml源代码。相关行为:

     app:tabTextColor="@color/tabTextColor"
    

    文本不是白色,而是黑色

    这是整个源代码

     <?xml version="1.0" encoding="utf-8"?>
    
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    
    
     xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/linlayout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">
    
        <include layout="@layout/toolbar"/>
    
        <android.support.design.widget.TabLayout
            android:id="@+id/tabs"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="#4f83cc"
            app:tabMode="scrollable"
            app:tabIndicatorColor="#FFFFFF"
            app:tabTextColor="@color/tabTextColor"
            >
        </android.support.design.widget.TabLayout>
    
    
        <android.support.v4.view.ViewPager
    
            android:id="@+id/viewPager"
            android:layout_below="@+id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            />
    

    在颜色xml文件中:

     <?xml version="1.0" encoding="utf-8"?>
    <resources>
       <color name="colorPrimary">#01579b</color>
       <color name="colorPrimaryDark">#002f6c</color>
       <color name="colorAccent">#FF4081</color>
       <color name="tabTextColor">#FFFFFF</color>
    </resources>
    
    2 回复  |  直到 8 年前
        1
  •  1
  •   Rohit Chauhan    8 年前

    您可以使用java代码更改TabLayout的文本颜色

    tabLayout.setTabTextColors(
      getResources().getColor(R.color.your_unselected_text_color),
      getResources().getColor(R.color.your_selected_text_color)
    );
    

    或者您可以尝试使用自定义样式进行TabLayout

    <style name="MyCustomTabLayout" parent="Widget.Design.TabLayout">
      <item name="tabTextAppearance">@style/MyCustomTabText</item>
      <item name="tabSelectedTextColor">@color/tab_text_act</item>
    </style>
    
    <style name="MyCustomTabText" parent="TextAppearance.AppCompat.Button">
      <item name="android:textSize">14sp</item>
      <item name="android:textColor">@color/tab_text</item>
    </style>
    

    下面是代码

    <android.support.design.widget.TabLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            style="@style/MyCustomTabLayout" />
    
        2
  •  0
  •   Shubham    8 年前

    尝试以下操作:

         app:tabSelectedTextColor="@color/white"
         app:tabIndicatorColor="@color/white"
    

    如果仍不起作用,请以编程方式执行: https://www.stackoverflow.com/a/36962857

    我希望这对你有帮助。