导航抽屉,概念问题

Posted

技术标签:

【中文标题】导航抽屉,概念问题【英文标题】:Navigation Drawer, concept problems 【发布时间】:2013-06-25 04:18:24 【问题描述】:

这是我的第一个问题。我想问问你对导航抽屉的看法。我尝试了一些项目,并且阅读了很多有关它的信息,但不知何故我无法真正理解它是如何工作的。这是我的原因/疑问:

理论上,你可以从任何地方进入你的应用程序的任何地方,我的意思是,这个概念迫使设计师只使用片段,将你的唯一 Activity 转换为一种“上帝概念”,它开发具有深度导航的应用程序并不是最好的主意。..

如果有一种方法可以将导航抽屉和活动结合起来,我是否应该在每个活动上一遍又一遍地实现相同的导航抽屉?我真的看不到这个..

我谈论这个是因为我正在尝试调整我的一个应用程序并在其上使用这种导航模式,但我真的不知道该怎么做。我仍然认为它更好有多个活动,当然还有片段,但我不知道如何组合它们以获得导航抽屉的最佳性能。我在这个网站上看到过类似的问题,但我没有找到我正在寻找的答案。也许我没有阅读足够的文档,或者我错了,我还没有理解这种模式的真正工作原理..

感谢您的帮助。

【问题讨论】:

【参考方案1】:

拥有一个包含导航抽屉的 Activity 并在您导航菜单抽屉时将片段交换进出并没有错。此外,如果您有良好的导航,则不必担心从导航抽屉中的应用程序中的“去任何地方”。导航抽屉的良好导航可能分为***视图详细视图。您的***视图是一组内容,您可能会将其放置在导航抽屉中。

Google Plus android 应用就是一个很好的例子。有一个主要活动,导航抽屉提供所有***视图,这些视图是在主要活动中交换进出的片段。当您进一步深入研究内容时,您将获得详细视图,即活动。

查看App Structure 和Navigation Drawer 的官方设计文档了解更多信息。

【讨论】:

【参考方案2】:

您可以将导航抽屉与活动一起使用。

只需创建一个实现抽屉的 BaseActivity 类, 并让您的所有其他活动扩展此活动。

【讨论】:

你能详细说明一下吗?我正在尝试这样做,但是如何从每个活动中添加特定布局? 所有子活动都需要有一个带抽屉的xml布局吗? 您可以使用抽屉创建一个 BaseActivity 类,并扩展该类以创建您的主要活动。但是,片段方法可能更合适。 我遇到的一个小但令人恼火的问题是,对于单独的活动,当我从抽屉中启动一个,然后回击时,会发生从globalactivity 的标题交换。我不知道如何更改它,以便在用户返回时标题已经回到活动的标题。那有意义吗?你遇到过吗?【参考方案3】:

使用抽屉式导航的一个简单理由:效率

首先,导航抽屉不是一个活动。它只是一种布局,您可以轻松地滑入和滑出视图。当然,这实际上是一个直观的实现问题,因此对于何时或何时不使用抽屉没有绝对的答案。如果您觉得用户可以通过该 UI 流程获得授权,那么值得这样做。

如果你在实现模式时遇到问题,那么你应该从小步骤开始,向official docs学习。

【讨论】:

以上是关于导航抽屉,概念问题的主要内容,如果未能解决你的问题,请参考以下文章

导航抽屉 - 禁用点击抽屉后面的项目

导航抽屉不适用于导航组件

使用抽屉导航在反应本机导航中导航时屏幕冻结

导航抽屉对齐问题

Vuetify 导航抽屉问题

在所有活动问题中显示导航抽屉