android开发分享androiddevise的TabLayout选项卡的文字大小

我有困难改变devise库tablayout(android.support.design.widget.TabLayout)的选项卡的文本大小。

我设法通过在TabLayout中分配tabTextAppearance来改变它

app:tabTextAppearance="@style/MyTabLayoutTextAppearance" 

以下风格

 <style name="MyTabLayoutTextAppearance" parent="TextAppearance.AppCompat.Widget.ActionBar.Title.Inverse"> <item name="android:textSize">14sp</item> </style> 

但我有2个副作用:

1)我失去了所选标签的重音颜色

2)标签文本不再大写。

     <style name="MineCustomTabText" parent="TextAppearance.Design.Tab"> <item name="android:textSize">16sp</item> </style> 

    使用在这样的TabLayout

     <android.support.design.widget.TabLayout app:tabTextAppearance="@style/MineCustomTabText" ... /> 

    继续使用tabTextAppearance,但是

    1)修复大写字母的副作用添加textAllCap在你的风格:

     <style name="MyTabLayoutTextAppearance" parent="TextAppearance.AppCompat.Widget.ActionBar.Title.Inverse"> <item name="android:textSize">14sp</item> <item name="android:textAllCaps">true</item> </style> 

    2)修复所选标签颜色副作用添加到TabLayout xml中的以下库属性:

     app:tabSelectedTextColor="@color/color1" app:tabTextColor="@color/color2" 

    希望这可以帮助。

    在api 22&23上工作制作这种风格:

     <style name="TabLayoutStyle" parent="Base.Widget.Design.TabLayout"> <item name="android:textSize">12sp</item> <item name="android:textAllCaps">true</item> </style> 

    并将其应用于您的Tablayout:

     <android.support.design.widget.TabLayout android:id="@+id/contentTabs" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:background="@drawable/list_gray_border" app:tabTextAppearance="@style/TabLayoutStyle" app:tabSelectedTextColor="@color/colorPrimaryDark" app:tabTextColor="@color/colorGrey" app:tabMode="fixed" app:tabGravity="fill"/> 

    我有类似的问题和类似的解决scheme:

    1)尺寸

    在xml中你有TabLayout,

      <android.support.design.widget.TabLayout ... app:tabTextAppearance="@style/CustomTextStyle" ... /> 

    那么在风格上,

      <style name="CustomTextStyle" parent="@android:style/TextAppearance.Widget.TabWidget"> <item name="android:textSize">16sp</item> <item name="android:textAllCaps">true</item> </style> 

    如果你不想把大写字符放在“android:textAllCaps”中,

    2)选定或未选定标签的文字颜色,

     TabLayout tabLayout = (TabLayout) view.findViewById(R.id.tabs); tabLayout.setupWithViewPager(viewPager); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { tabLayout.setTabTextColors(getResources().getColorStateList(R.color.tab_selector,null)); } else { tabLayout.setTabTextColors(getResources().getColorStateList(R.color.tab_selector)); } 

    然后在res / color / tab_selector.xml中

     <selector xmlns:android="https://schemas.android.com/apk/res/android"> <item android:color="@color/white" android:state_selected="true" /> <item android:color="@color/white" /> 

     TabLayout tab_layout = (TabLayout)findViewById(R.id.tab_Layout_); private void changeTabsFont() { Typeface font = Typeface.createFromAsset(getActivity().getAssets(), "fonts/"+ Constants.FontStyle); ViewGroup vg = (ViewGroup) tab_layout.getChildAt(0); int tabsCount = vg.getChildCount(); for (int j = 0; j < tabsCount; j++) { ViewGroup vgTab = (ViewGroup) vg.getChildAt(j); int tabChildsCount = vgTab.getChildCount(); for (int i = 0; i < tabChildsCount; i++) { View tabViewChild = vgTab.getChildAt(i); if (tabViewChild instanceof TextView) { ((TextView) tabViewChild).setTypeface(font); ((TextView) tabViewChild).setTextSize(15); } } } } 

    这个代码适用于我使用tablayout。 它会改变字体的大小,也改变字体样式。

    这也将帮助你们,请检查这个链接

    此代码适用于Tablayout更改文本颜色,types面(字体样式)和文本大小。

    试试这个….它为我工作….

    在我的layout.xml我有使用这样的东西….

     <android.support.design.widget.TabLayout android:id="@+id/tab_layout" style="@style/MyCustomTabLayout" android:layout_width="match_parent" android:layout_height="wrap_content" app:tabGravity="fill" app:tabMode="fixed" /> 

    并在我的style.xml我有使用的代码和平的东西….

     <style name="MyCustomTabLayout" parent="Widget.Design.TabLayout"> <item name="android:background">YOUR BACKGROUND COLOR</item> <item name="tabTextAppearance">@style/MyCustomTabText</item> <item name="tabSelectedTextColor">SELECTED TAB TEXT COLOR</item> <item name="tabIndicatorColor">SELECTED TAB INDICATOR COLOR</item> </style> <style name="MyCustomTabText" parent="TextAppearance.AppCompat.Button"> <item name="android:textSize">YOUR TEXT SIZE</item> <item name="android:textStyle">bold</item> <item name="android:textColor">@android:color/white</item> </style> 

    我希望它会为你工作…..

    以上就是android开发分享androiddevise的TabLayout选项卡的文字大小相关内容,想了解更多android开发(异常处理)及android游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/addevelopment/513836.html

      (0)
      上一篇 2020年11月29日
      下一篇 2020年11月29日

      精彩推荐