【问题标题】:Android NavigationDrawer and ViewPager as its one of fragmentAndroid NavigationDrawer 和 ViewPager 作为其片段之一
【发布时间】:2013-08-28 13:47:37
【问题描述】:
我创建了一个 SherlockFragmentActivity,它包含三个用于 ViewPager 的片段。但现在我想在 NavigationDrawer 中使用这个 Activity 但我很困惑如何做到这一点。 Google+ 应用程序有这种实现,但我想知道如何实现。
NavigationDrawer 将具有以下 UI 元素:
- FragmentActivity(包含三个片段作为ViewPager)
- 第二个片段
- 第三个片段
导航抽屉是否可以进行这种布局如果可以,我应该怎么做。如果没有,我应该怎么做才能在我的应用中实现这种导航。
【问题讨论】:
标签:
android
android-fragments
android-viewpager
navigation-drawer
【解决方案1】:
很有可能。您只需为其创建正确的布局文件。
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- The main content view -->
<RelativeLayout
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- viewpager goes here -->
</RelativeLayout>
<!-- The navigation drawer -->
<LinearLayout android:id="@+id/left_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:orientation="vertical"
android:layout_gravity="start">
<!-- fragment one goes here in drawer -->
<!--- fragment two goes here in drawer-->
</LinearLayout>
</android.support.v4.widget.DrawerLayout>
DrawerLayout 必须有 2 个子项,第一个是主要内容,在您的情况下,这将包含 ViewPager 和其他内容。第二个孩子是抽屉本身。
将此作为您活动的内容。
其余信息可以通过使用android开发者页面here上的示例找到
【讨论】:
-
嗨 dumazy 你没明白我的意思,可能是我的问题有点混乱。我希望 NavigationDrawer 仅具有 LisView 并且在点击其中一项时它应该显示 ViewPager(带有三个片段)。我试图实现这一点,但现在陷入另一个问题,过去两天一直在摸不着头脑......它第一次显示所有 ViewPager 的片段都很好,但当我返回时第二次没有显示片段。我正在添加一个压缩的保管箱链接here。请看一下。