问题描述
因此,我正在为Android创建Material Design应用。 我使用的是新的工具栏,而不是使用ActionBar。 在一项活动中,我想在工具栏下方显示选项卡。 这在纵向和横向模式下均适用,但是在横向模式下,选项卡居中,不会覆盖视图的整个宽度。
这是设计使然还是我需要知道的事情?
这是我的活动的布局:
<android.support.design.widget.AppBarLayout
android:layout_height="wrap_content"
android:layout_width="match_parent">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:height="?attr/actionBarSize"
android:background="@color/primary"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:titleTextAppearance="@style/ToolbarTitle"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light">
</android.support.v7.widget.Toolbar>
<android.support.design.widget.TabLayout
android:id="@+id/toolbar_tabs"
android:height="?attr/actionBarSize"
android:background="@color/primary"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_scrollFlags="scroll|enterAlways" />
</android.support.design.widget.AppBarLayout>
以下代码在onCreate
对此进行了初始化:
// Set up the toolbar
this.setSupportActionBar(mToolbar);
ActionBar ab = this.getSupportActionBar();
if (ab != null)
{
ab.setDisplayHomeAsUpEnabled(true);
ab.setHomeButtonEnabled(true);
ab.setDisplayShowTitleEnabled(true);
}
// Set up the pager and tabs from the pager
mTabViewPager.setAdapter(mTabPagerAdapter);
mTabLayout.setupWithViewPager(mTabViewPager);
mTabPagerAdapter
是一个寻呼机适配器,其中包含要在文档中找到的选项卡显示的页面。
1楼
您可以使用app:tabGravity="fill"
在整个屏幕上显示宽度。
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:tabGravity="fill"
app:tabIndicatorColor="@color/white"
app:tabMode="fixed"
app:tabMaxWidth="0dp"
app:tabSelectedTextColor="@color/white"
app:tabTextColor="@color/white_dim" />`