设计支持 TabLayout

Design Support TabLayout

我正在使用设计支持库 TabLayout。我的问题是其中一个选项卡的标题太长,因此它绘制在 2 行而不是 1 行上。我想知道是否有办法缩放标题文本大小以确保所有标题都绘制在 1 行上.

这里有一张截图可以更好地解释我的问题:

如果细节很重要,我将使用设计支持 TabLayout、一个 ViewPager 和一个 FragmentPagerAdapter 来填充我的选项卡。

提前致谢!

你设置了吗:

<android.support.design.widget.TabLayout
    ..
    app:tabMode="scrollable" />

您可以在 styles.xml 中更改字体大小或 tabLayout 的其他参数。例如:

<style name="Base.Widget.Design.TabLayout" parent="android:Widget">
        <item name="tabMaxWidth">@dimen/tab_max_width</item>
        <item name="tabIndicatorColor">?attr/colorAccent</item>
        <item name="tabIndicatorHeight">2dp</item>
        <item name="tabPaddingStart">12dp</item>
        <item name="tabPaddingEnd">12dp</item>
        <item name="tabBackground">?attr/selectableItemBackground</item>
        <item name="tabTextAppearance">@style/AppTheme.TextAppearance.Design.Tab</item>
        <item name="tabSelectedTextColor">?android:textColorPrimary</item>
    </style>

    <style name="AppTheme.TextAppearance.Design.Tab" parent="TextAppearance.AppCompat.Button">
        <item name="android:textSize">12sp</item>
        <item name="android:textColor">?android:textColorSecondary</item>
        <item name="textAllCaps">true</item>
    </style>

他们声称已经解决了这个问题,但它从支持库 22.2.1 开始不起作用。

参见:https://code.google.com/p/android/issues/detail?id=175516

将设计支持库更新为 23.1.0。他们已经解决了这个问题,但您的文字大小也发生了变化