如何使用tabContentStart从设备屏幕中间

时间:2017-03-15 00:55:51

标签: android android-layout android-viewpager android-tabs android-tablayout

我正在使用 TabLayout ViewPager

<android.support.v4.view.ViewPager
        android:id="@+id/view_pager_social_profiles"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_behavior="@string/appbar_scrolling_view_behavior"></android.support.v4.view.ViewPager>

<android.support.design.widget.TabLayout
        android:id="@+id/tab_layout_social_profiles"
        android:layout_width="match_parent"
        android:layout_height="112dp"
        app:tabContentStart="72dp"
        app:tabGravity="center"
        app:tabIndicatorHeight="0dp"
        app:tabMode="scrollable"></android.support.design.widget.TabLayout>

我想从屏幕中间开始标签内容,因此如果只有一个标签,它将与屏幕正中对齐(水平),并且所选标签也将始终位于中心。

3 个答案:

答案 0 :(得分:2)

将您的标签放在中心的最快捷最简单的方法就是摆脱

app:tabMode="scrollable"

在TabLayout中。当然,这会将您的标签保持在“固定”位置(不可滚动)。

如果你真的想要从中心开始的可滚动标签,this GitHub project看起来可能对你有帮助。

答案 1 :(得分:1)

使用this课程。 将此中心tablayout粘贴到java类中。在xml设计中使用居中tablayout而不是tablayput

答案 2 :(得分:0)

将内容用于中心使用 setTabGravity(1) [1为中心, 0表示填写]

将标签设置在中心

应用程式:tabMode = “滚动”