Android:一个 Activity 中的多个选项菜单
我有一个包含 ViewFlipper
的 Activity
,并且希望为该 ViewFlipper
中的每个视图显示不同的选项菜单。也就是说,按下菜单按钮时显示的菜单类型将取决于当前视图的类型。
但是,onCreateOptionsMenu()
仅调用一次(第一次显示选项菜单时),因此无法在那里实现创建不同的菜单。
我该如何解决这个问题?
I have an Activity
containing a ViewFlipper
and would like to show a different option menu for each view in that ViewFlipper
. That is, the type of menu displayed when the menu button is pressed would depend on the type of the current view.
However, onCreateOptionsMenu()
is called only once (when showing the option menu for the first time), so creating the different menus can't be implemented there.
How could I solve this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
首先阅读 onPrepareOptionsMenu(Menu menu)
每次当用户在您的 Activity 之一内按下 Android 设备上的 Menu 时,将调用
onPrepareOptionsMenu
方法。第一次显示菜单时(即仅一次),将调用onCreateOptionsMenu
方法。基本上,您应该在
onPrepareOptionsMenu
方法中进行任何更改,例如启用/禁用某些菜单项,或根据情况更改菜单项文本。所以这样做(不要使用
onCreateOptionsMenu(Menu menu)
)First read about onPrepareOptionsMenu(Menu menu)
Each time the user presses the Menu on their Android device while inside one of your activities, the
onPrepareOptionsMenu
method is called. The first time the menu is shown (i.e. only once), theonCreateOptionsMenu
method is called.Basically, the
onPrepareOptionsMenu
method is where you should make any changes such as enabling/disabling certain menu items, or changing the menu item text depending on the circumstances.So do this (Don't use
onCreateOptionsMenu(Menu menu)
)