导航抽屉(Google+与YouTube)

EGH*_*HDK 399 user-interface android android-layout navigation-drawer

有谁知道如何实现像今天的一些顶级应用程序的滑动菜单?

其他Stack Overflow 问题对于如何做到这一点没有任何答案,所以我试图收集尽可能多的信息来帮助其他人.我在下面提到的所有应用程序都可以很好地实现幻灯片菜单.

1. Google Plus(截至2012年7月7日)

Google+幻灯片菜单截图

您只能通过单击左上角的G +徽标从第一个屏幕转到第二个屏幕.请注意,整个屏幕从其位置移动并轻推到屏幕右侧(包括操作栏).要返回第一个屏幕,您可以将右侧滑回焦点,也可以再次单击G +图标.

2. YouTube(截至2012年7月7日)

YouTube幻灯片菜单截图

您可以使用两种方法从第一个屏幕进入第二个屏幕.您可以点击左上角的YouTube徽标,也可以使用滑动手势将其移到右侧.这已经与G + app不同了.其次,您可以看到操作栏保持不变(与G +不同).最后,为了获得原始屏幕,它就像G +一样工作.

Ale*_*ood 152

编辑#3:

导航抽屉模式在Android文档中正式描述!

在此输入图像描述 查看以下链接:

  • 设计文档可以在这里找到.
  • 开发人员文档可以在这里找到.

编辑#2:

Roman Nurik(Google的Android设计工程师)已确认建议的行为是在打开抽屉时不移动操作栏(如YouTube应用程序).查看此Google+信息.


编辑#1:

我刚才回答了这个问题,但我又重新强调,Prix​​ing有最好的飞出菜单......到目前为止.这绝对是美丽的,非常流畅,它让Facebook,Google +和YouTube蒙羞.EverNote也很不错......但仍然不如Prixing那么完美.查看关于如何实施弹出菜单的这一系列帖子(来自Prixing本人的首席开发人员!).


原答案:

Adam Powell和Richard Fulcher在49:47 - 52:50的Google I/O谈话中谈到了这一点,题为"Android中的导航".

为了总结他们的答案,截至本发布日期,滑出导航菜单不是 Android应用程序设计标准的正式部分.正如您可能已经发现的那样,目前没有对此功能的原生支持,但有人谈到将此添加到即将推出的支持包修订版中.

关于YouTube和G +应用程序,它们表现不同似乎很奇怪.我最好的猜测是YouTube应用程序修复操作栏位置的原因是,

  1. 使用YouTube应用的用户最重要的导航选项之一是搜索,该操作在SearchView操作栏中执行.在这方面使操作栏保持静态是有意义的,因为它将允许用户始终具有搜索新视频的选项.

  2. G +应用程序使用a ViewPager来显示其内容,因此制作特定于布局内容的拉出菜单(即操作栏下的所有内容)都没有多大意义.刷卡应该提供在页面之间导航的方式,而不是全局导航的方式.这可能就是为什么他们决定在G +应用程序中使用不同于YouTube应用程序的方式.

    另请注意,请查看Google Play应用以获取其他版本的"拉出菜单"(当您位于最左侧页面时,向左滑动并拉出,"半页"菜单将会出现).

你是对的,这不是非常一致的行为,但似乎在Android团队中对于如何实现这种行为没有100%的共识.如果将来应用程序更新以便两个应用程序中的导航相同(我们似乎非常热衷于在谈话中使所有Google制造的应用程序中的导航保持一致),我不会感到惊讶.

  • _Prixing,Evernote和Spotify都有相当大的团队编写他们的应用程序_我是Prixing的首席执行官,我想确切地说我们只有一个真正的Android开发人员(但是非常有价值的人,Cyril Mottier) (73认同)

Jar*_*ows 15

就在最近,我分叉了一个名为"RibbonMenu"的当前Github项目并编辑它以满足我的需求:

https://github.com/jaredsburrows/RibbonMenu

目的是什么?

  • 易于访问:允许轻松访问滑入和滑出的菜单
  • 易于实施:使用最少量的代码更新同一屏幕
  • 独立性:不需要ActionBarSherlock等支持库
  • 定制:易于更改颜色和菜单

什么是新的

  • 更改了滑动动画以匹配Facebook和Google+应用
  • 添加标准ActionBar(您可以选择使用ActionBarSherlock)
  • 使用menuitem打开菜单
  • 添加了在主Activity上更新ListView的功能
  • 在菜单中添加了2个ListView,类似于Facebook和Google+应用程序
  • 添加了AutoCompleteTextView和Button以显示实现示例
  • 添加了允许用户点击"后退按钮"以在打开时隐藏菜单的方法
  • 与Facebook和Google+应用程序不同,允许用户同时与后台(主ListView)和菜单进行交互!

带菜单的ActionBar

带菜单的ActionBar

选择了菜单输出和搜索的ActionBar

选择了菜单输出和搜索的ActionBar


naX*_*aXa 5

NavigationDrawerGoogle材料设计指南遵循了一个很好的实现(并且兼容到API 10) - MaterialDrawer库(链接到GitHub).截至2017年5月,它已得到积极支持.

它可以在Maven Central repo中找到.Gradle依赖设置:

compile 'com.mikepenz:materialdrawer:5.9.1'
Run Code Online (Sandbox Code Playgroud)

Maven依赖设置:

<dependency>
    <groupId>com.mikepenz</groupId>
    <artifactId>materialdrawer</artifactId>
    <version>5.9.1</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述 在此输入图像描述