如何在选项卡顶部显示选项卡指示器

7

我按照这个教程做了。我只是简单地修改了一下,将TabLayout显示在屏幕底部。

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">


    <android.support.v4.view.ViewPager
        android:id="@+id/viewpager_landing"
        android:layout_width="match_parent"
        android:layout_height="0px"
        android:layout_weight="1"
        android:background="@android:color/white" />

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

</LinearLayout>

enter image description here

问题:

TabIndicator 显示在屏幕底部,工作正常。现在我想将 TabIndicator 显示在标签的顶部,而不是底部。使用自定义布局可以实现这一点,如教程中所述,但是否有任何 XML 属性可以将 TabIndicator 显示在顶部?


请放置您的 XML 代码。谢谢。 - Fakher
@Fakher 我已经发布了XML。 - N J
@Nilesh,你实现了这个吗?我也想在顶部显示选项卡指示器。 - Nitesh Kumar
@NiteshKhatri 不是默认的,现在我已经为此制作了自定义布局。 - N J
请参考此处的解决方案。 - Muhammed Arshad K
2个回答

4
将以下代码添加到你的TabLayout的XML中。
app:tabIndicatorGravity="top"

0
这对我有用:
LinearLayout tabs = ((LinearLayout) tabLayout.getChildAt(0));

for (int position = 0; position < tabs.getChildCount(); position++) {
    LinearLayout item = ((LinearLayout) tabs.getChildAt(position));
    item.setRotationX(180);
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接