我正在尝试在我的ViewPager
下添加ToolBar
,问题是ViewPager
位于布局的顶部,尽管我放了layout_below="@+id/toolBar
来自ToolBar
这是我的activiy_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:local="http://schemas.android.com/apk/res-auto"
android:id="@+id/drawerMainActivity"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/containerView">
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="?android:attr/actionBarSize"
android:background="?attr/colorPrimary"
android:id="@+id/toolBar"
android:fitsSystemWindows="true"
android:theme="@style/ThemeOverlay.AppCompat.Dark"
/>
<android.support.design.widget.TabLayout
android:id="@+id/tab_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/toolBar"
android:background="?attr/colorPrimary"
android:elevation="6dp"
android:minHeight="?attr/actionBarSize"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"/>
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_below="@id/tab_layout"/>
</FrameLayout>
<android.support.v7.widget.RecyclerView
android:layout_width="290dp"
android:layout_height="match_parent"
android:id="@+id/recyclerView"
android:scrollbars="vertical"
android:background="#FFFFFF"
android:layout_gravity="left"
/>
</android.support.v4.widget.DrawerLayout>
注意:在此布局上,我还添加了NavigationDrawer
这是输出:
我做错了什么?
我已创建此style
<style name="tabs" parent ="ThemeOverlay.AppCompat.Dark.ActionBar">
<item name="tabSelectedTextColor">@color/blue</item>
</style>
现在我没有看到“影子”,因为我也删除了这一行android:background="?attr/colorPrimary"
,但现在我看到了white
标签,我只看到了选择线。
答案 0 :(得分:1)
What I'm doing wrong?
两个项目的父项都是<FrameLayout
,后者将其子项一个堆叠在另一个上面。您必须使用<RelativeLayout
答案 1 :(得分:1)
您还可以尝试的第二件事是直接在Main父DrawerLayout中包含一个包含View Pagers的线性布局。我在我的应用程序中以这种方式实现了它。
<android.support.v4.widget.DrawerLayout
android:id="@+id/tab_layout_main_id"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<include
android:id="@+id/app_bar" //app bar here.
layout="@layout/app_bar" />
<com.faisal.soccerworld.tab_layout.SlidingTabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<android.support.v4.view.ViewPager // here's view pagers.!
android:id="@+id/viewPager"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
</LinearLayout>
<fragment // this is navigation drawer.!
android:id="@+id/fragmentNavDrawerID"
android:name="com.faisal.soccerworld.tab_layout.NavigationDrawerFragment"
android:layout_width="@dimen/DrawerWidth"
android:layout_height="match_parent"
android:layout_gravity="start"
app:layout="@layout/fragment_navigation_drawer"
tools:layout="@layout/fragment_navigation_drawer" />
</android.support.v4.widget.DrawerLayout>