如何在android.support.design.widget.TabLayout中将可绘制对象设置为tabIndicator

时间:2019-01-21 13:29:20

标签: android android-layout android-tablayout

我想在
中为tab indictor创建背景形状  android.support.design.widget.TabLayout 但是渐变不起作用

布局中的布局如下:

<android.support.design.widget.TabLayout
                android:id="@+id/fragment_category_tab_layout"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="3dp"
                android:layout_marginTop="3dp"
                android:layout_marginRight="3dp"
                android:layout_marginBottom="3dp"
                app:tabIndicatorGravity="stretch"
                app:tabIndicator="@drawable/background_tab_selected"
                app:tabSelectedTextColor="@color/white" />

和background_tab_selected.xml如下:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
    <gradient
        android:angle="0"
        android:startColor="@color/red"
        android:endColor="@color/white"
        android:type="linear" />

    <corners android:radius="33dp" />
</shape>

1 个答案:

答案 0 :(得分:0)

您也可以使用此可绘制文件在代码中进行操作。希望这可以帮助。

var tab = fragment_category_tab_layout.newTab();
tab.setCustomLayout( R.layout.your_shape_drawable_file );
fragment_category_tab_layout.addTab(add);