如何在Android上的TabLayout中为选择选项卡设置填充

时间:2017-08-05 06:58:47

标签: android android-viewpager android-tablayout

在我的申请中,我应该TabLayoutViewPager 我希望在tabIndicatorColor中选择tabLayout的项目集填充。

默认显示我这样的图像:
Image 1

我想在选中的项目时,请告诉我如下:
enter image description here

我想为tabIndicatorColor设置填充。

我的TabLayout XML代码:

<android.support.design.widget.TabLayout
    android:id="@+id/serialDetail_tabLayout"
    android:layout_width="match_parent"
    android:layout_height="@dimen/size50"
    android:layout_gravity="bottom"
    android:background="@color/colorPrimary"
    app:tabIndicatorColor="@color/colorAccent"
    app:tabSelectedTextColor="@color/colorAccent"
    app:tabTextAppearance="@style/allCapsTabLayout"
    app:tabTextColor="@color/white" />

我该怎么办?请帮我。谢谢所有&lt; 3

2 个答案:

答案 0 :(得分:7)

是的,没有自定义视图和外部库..

您可以创建一个选择器文件

tab_indicator_line.xml 添加到可绘制文件夹

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_selected="true" android:state_pressed="false">
        <layer-list xmlns:android="http://schemas.android.com/apk/res/android">

            <item android:top="-5dp" android:left="-5dp" android:right="-5dp" android:bottom="5dp">
                <shape android:shape="rectangle">

                    <solid android:color="@android:color/white"/>
                    <stroke android:color="@color/colorPrimary" android:width="2dp"/>

                </shape>
            </item>
        </layer-list>
    </item>

    <item android:state_selected="true" android:state_pressed="true">
        <layer-list xmlns:android="http://schemas.android.com/apk/res/android">

            <item android:top="-5dp" android:left="-5dp" android:right="-5dp" android:bottom="5dp">
                <shape android:shape="rectangle">

                    <solid android:color="@android:color/white"/>
                    <stroke android:color="@color/colorPrimary" android:width="2dp"/>

                </shape>
            </item>
        </layer-list>
    </item>

</selector>

现在使用

在tabLayout中应用
app:tabBackground="@drawable/tab_indicator_line"
app:tabIndicatorHeight="0dp"

告诉我是否有任何疑问..

答案 1 :(得分:1)

有两种简单的方法可以做到这一点。要么使用自定义布局选项卡,要么只在相同颜色的选项卡下添加视图。第二个选项更容易。