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

发布于 2024-12-20 13:17:29 字数 701 浏览 1 评论 0原文

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

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

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

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

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

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.

All of my screens have between 1 and 3 actions that can be performed, so they all fit very nicely into the ActionBar UI (which Google recommends has a maximum of three buttons). The problem now is that none of my screens have a regular options menu and so they do nothing when the user presses the hardware Menu button.

According to Google's interface guidelines, this is correct behavior. If your activity doesn't have an options menu then it should do nothing when the Menu button is pressed. I've found during user testing, however, that users are quite perplexed when they press Menu and nothing happens (and every single user has tried, usually multiple times). They say that they appreciate the actions being exposed on the screen through the ActionBar, but at the same time they want the Menu button to do something.

I've been looking at Google's first party apps and it looks like they just always have enough options available to be able to load up the options menu with stuff after the ActionBar is full. Google+ seems to use the Menu button in the traditional way for overflow options on phones that have one, and they show a dropdown menu in the ActionBar for phones that don't. That would work if I had more than three actions but I currently don't.

It seems that the only way to meet my user's expectations is to put some junk options that have no value into the Options Menu just so that something happens when they push the button. I really don't want to do that. Does anybody know of a good way to deal with this problem? Should I just leave the menu button alone and expect people to figure out that it doesn't do anything?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

自由范儿 2024-12-27 13:17:29

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

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

我有一个专为 Android 2.2 构建的应用程序,因此我没有使用 3.0+ 内置 ActionBar 类,而是使用几年前推出的 Google 旧版 UI 建议来构建我自己的自定义 ActionBar 实现。< /p>

作为动作栏库的作者,这句话让我感到不安。在 3.0 之前的版本和 3.0 之后的本机操作栏上使用自定义操作栏实现是相当简单的。查看 Google 的Action Bar Compat 示例。

...或者,您知道,您也可以使用像 ActionBarSherlock 这样的库来为您完成此操作!

I think it's safe to assume that most users don't know the menu button exists and having all of the actionable items displayed on screen is best. User testing by Google has revealed this and it is why they have chosen to eliminate the menu and go with the built-in action bar starting with Android 3.0 and culminating in the recent 4.0 release.

Something to think about would be added a single "About" item to the pre-3.0 options menu/post-3.0 overflow menu. This could just popup a dialog with simple info about the application (e.g., version, licensing, link to website, author, etc.). This way there is something there should they happen to press the menu button but it is not required in order to properly use each activity to its fullest potential.

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.

As an author of an action bar library this sentence disturbs me. It's fairly trivial to use a custom action bar implementation on pre-3.0 and the native one post-3.0. Take a look at Google's Action Bar Compat sample.

...or, you know, you could also go with a library like ActionBarSherlock that does this for you! </shamelessPlug>

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文