如何禁用TabLayout上的点击效果?

时间:2018-07-27 19:36:05

标签: android android-tablayout

如何禁用此点击效果?

enter image description here

我试图将它们添加到Activity的主题中,但不起作用

<item name="tabIndicatorColor">@android:color/transparent</item>
<item name="tabBackground">@android:color/transparent</item>
<item name="tabTextAppearance">@android:color/transparent</item>
<item name="tabSelectedTextColor">@android:color/transparent</item>

我也尝试直接在TabLayout中使用主题,但是应用程序将崩溃

还尝试了android:stateListAnimator,但仍然无法正常工作

<android.support.design.widget.TabLayout
    android:id="@+id/tabs"
    style="@style/AppTheme"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:stateListAnimator="@null">

5 个答案:

答案 0 :(得分:11)

使用app:tabRippleColor="@null"

<android.support.design.widget.TabLayout
        android:id="@+id/homeTabLayout"
        android:layout_width="match_parent"
        android:layout_height="@dimen/custom_tab_layout_height"
        android:layout_alignParentBottom="true"
        android:background="@color/white"
        android:tabStripEnabled="true"
        app:tabBackground="@color/white"
        app:tabGravity="fill"
        app:tabIndicatorHeight="0dp"
        app:tabMode="fixed"
        app:tabPaddingEnd="-1dp"
        app:tabPaddingStart="-1dp"
        app:tabRippleColor="@null" />

这对我有用。

答案 1 :(得分:4)

尝试将标签的背景更改为透明的app:tabBackground="@android:color/transparent",如下所示

<android.support.design.widget.TabLayout
        android:id="@+id/tabLayout"
        android:layout_width="match_parent"
        android:layout_height="@dimen/tab_height"
        app:tabBackground="@android:color/transparent"
        app:tabMode="fixed" />

它确实有效,我已经证实。

答案 2 :(得分:1)

执行以下操作:

app:tabRippleColor="@null"

这基本上会禁用波纹背景资源。

答案 3 :(得分:0)

tabLayout.setTabRippleColorResource(android.R.color.transparent);

答案 4 :(得分:0)

只需在 tablayout xml 中添加这一行: app:tabRippleColor="@android:color/transparent"