android - 带有菜单按钮的手机上 ActionBar 的正确用户体验?

标签 android user-interface android-actionbar android-menu

我有一个为 Android 2.2 构建的应用程序,所以我没有使用 3.0+ 内置 ActionBar 类,而是使用几年前引入的 Google 旧 UI 推荐来构建我自己的自定义 ActionBar 实现。

我的所有屏幕都有 1 到 3 个可以执行的操作,因此它们都非常适合 ActionBar UI(Google 建议最多有三个按钮)。现在的问题是我的屏幕都没有常规选项菜单,因此当用户按下硬件菜单按钮时它们什么也不做。

根据 Google 的界面指南,这是正确的行为。如果您的 Activity 没有选项菜单,那么在按下 Menu 按钮时它应该什么都不做。然而,我在用户测试期间发现,当用户按下菜单但没有任何反应时,用户会感到非常困惑(而且每个用户都尝试过,通常是多次)。他们说他们很欣赏通过 ActionBar 在屏幕上显示的操作,但与此同时他们希望菜单按钮执行某些操作。

我一直在研究 Google 的第一方应用程序,看起来它们总是有足够的可用选项,以便能够在 ActionBar 填满后加载选项菜单。 Google+ 似乎以传统方式使用菜单按钮在有菜单按钮的手机上显示溢出选项,并且它们在没有手机的 ActionBar 中显示下拉菜单。如果我有三个以上的操作,那会起作用,但我目前没有。

似乎满足我的用户期望的唯一方法是将一些没有值(value)的垃圾选项放入选项菜单中,这样当他们按下按钮时就会发生一些事情。我真的不想那样做。有人知道解决这个问题的好方法吗?我是否应该只留下菜单按钮并期望人们发现它什么都不做?

最佳答案

我认为可以安全地假设大多数用户不知道菜单按钮的存在,最好在屏幕上显示所有可操作的项目。 Google 的用户测试揭示了这一点,这就是为什么他们选择从 Android 3.0 开始并在最近的 4.0 版本中取消菜单并使用内置操作栏。

需要考虑的是在 pre-3.0 选项菜单/post-3.0 溢出菜单中添加一个“关于”项目。这可能只是弹出一个对话框,其中包含有关应用程序的简单信息(例如,版本、许可、网站链接、作者等)。这样,如果他们碰巧按下菜单按钮,就会有一些东西,但为了充分发挥每个 Activity 的潜力,这并不是必需的。

I have an app that's built for Android 2.2, so I'm not using the 3.0+ built-in ActionBar class but rather building my own custom ActionBar implementation using Google's older UI recommendation that was introduced a couple of years ago.

作为 Action 条库的作者,这句话让我很不安。在 3.0 之前的版本和 3.0 之后的原生版本上使用自定义操作栏实现是相当简单的。看看谷歌的Action Bar Compat样本。

...或者,您也可以使用像 ActionBarSherlock 这样的库那是为你做的! </shamelessPlug>

关于android - 带有菜单按钮的手机上 ActionBar 的正确用户体验?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8447073/

相关文章:

Java - 为应用程序构建 GUI

android - ActionBar 不显示图标,Android Studio

android - fade_out,插值器使应用程序崩溃

安卓支持设计: BottomNavigationView

android - 无法使用 OkHttp3 在文件管理器中选择文件

android - Window.FEATURE_ACTION_BAR_OVERLAY 不适用于 android 2.3

android - getActionBar() 总是返回 null

java - 如何在Android Studio中使用 'implements'函数

c# - 检测弹出窗口何时/是否决定重新定位自身

java FX : scene's lookup method