【问题标题】:How to access navigation drawer in all activities without using fragments?如何在不使用片段的情况下访问所有活动中的导航抽屉?
【发布时间】:2014-03-29 07:27:47
【问题描述】:

如何在不使用片段的情况下访问所有活动中的导航抽屉? 我想在所有活动中访问导航抽屉。我不想使用片段。相反我想使用活动。我知道使用片段比活动更好。 请帮帮我。

【问题讨论】:

  • 不清楚也没有意义。导航抽屉将在一个活动中,你想如何从不同的活动中访问它?不适用
  • 例如,我有一个带有导航抽屉的活动。所以我想在我的应用程序的所有其他活动中包含该导航抽屉。
  • 如果您知道如何在所有活动中包含导航抽屉,请帮助我。

标签: android android-activity navigation navigation-drawer


【解决方案1】:

你真的应该再考虑一下。不要害怕使用碎片,它们很好,将来你会经常使用它。我看到根本不需要这样的设计,它的灵活性较低,会导致糟糕的设计和代码冗余。您可以提及完整的场景,我们可以帮助您更好地设计您的应用程序。

【讨论】:

  • 我不怕使用碎片。但我想使用这种替代方式来包含导航抽屉。
  • 将该抽屉活动作为抽象类并创建它。然后在所有活动中扩展它。这样它将在所有活动中复制。
  • 我已经尝试过了,但我什么也没得到。有一些布局错误
【解决方案2】:

我认为你不能使用'NavigationDrawer'来做到这一点,你必须使用'Fragments'和'NavigationDrawer',我建议你这样做以提高应用程序的灵活性和用户界面。

第一:谷歌推荐使用“片段”。要在 Android 上创建动态的多窗格用户界面,您需要将 UI 组件和活动行为封装到可以交换进出活动的模块中。您可以使用 Fragment 类创建这些模块,其行为有点像嵌套活动,可以定义自己的布局并管理自己的生命周期。

访问http://developer.android.com/training/basics/fragments/index.html

第二:主要内容视图(上面的 FrameLayout)必须是 DrawerLayout 中的第一个子视图,因为 XML 顺序意味着 z-ordering,并且抽屉必须位于内容的顶部。

<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 -->
<FrameLayout
    android:id="@+id/content_frame"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />
<!-- The navigation drawer -->
<ListView android:id="@+id/left_drawer"
    android:layout_width="240dp"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:choiceMode="singleChoice"
    android:divider="@android:color/transparent"
    android:dividerHeight="0dp"
    android:background="#111"/>

访问http://developer.android.com/training/implementing-navigation/nav-drawer.html

第三:你想要这样的东西。 “导航中心” 导航抽屉反映了您的应用程序的结构,并显示了它的主要导航中心。将导航中心视为您的应用程序中用户希望经常访问或用作进入应用程序其他部分的起点的那些地方。导航中心至少是顶级视图,因为它们对应于您应用的主要功能区域。如果您的应用结构较深,您可以添加用户可能经常访问的较低级别的屏幕,并同时制作这些导航中心。

访问http://developer.android.com/design/patterns/navigation-drawer.html

【讨论】:

    猜你喜欢
    • 2013-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多