如何在Tab布局中设置Tab宽度?

时间:2016-02-11 10:24:36

标签: java android android-tablayout

我正在尝试创建一个tab layout,其中包含两个tabs。当我在小型移动设备上运行该应用时,tab layout看起来不错,但是当我在Tablet上运行相同的应用时,它会显示如下。

在平板电脑上看起来像这样:

enter image description here

我希望每个标签占据整个空间,两端都没有任何间隙。我已经像这样创建了tab layout ......

private void drawTabLayout() {
    tabLayout = (TabLayout) findViewById(R.id.tabs);
    tabLayout.addTab(tabLayout.newTab().setText("Imprint") );
    tabLayout.addTab(tabLayout.newTab().setText("Legal"));
    tabLayout.setTabGravity(TabLayout.GRAVITY_FILL);
    tabLayout.setTabMode(TabLayout.MODE_FIXED);
    tabLayout.setSelectedTabIndicatorHeight(10);
    tabLayout.setBackgroundColor(Color.WHITE);
}

我搜索了很多网站但找不到正确的回答

2 个答案:

答案 0 :(得分:24)

tab_layout.xml

中添加此代码
<android.support.design.widget.TabLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:tabMaxWidth="0dp"
            app:tabGravity="fill"
            app:tabMode="fixed" />

希望它对你有用......

答案 1 :(得分:1)

您可以创建一个标签布局,其中每个标签都有一个自定义视图,并在tablayout中添加该标签,其大小与您选择的大小相同

View customView = LayoutInflater.from(getContext()).inflate(R.layout.tab_text, null); 

addTab(newTab().setCustomView(customView))