0

在我的应用程序中,我有一个屏幕,它在操作栏上有一个菜单,点击它我会根据在后台运行的进程的状态显示我需要在运行时放置的子菜单。

例如,假设我在屏幕上,我的菜单是 MENU,它有三个子菜单

MENU---->  1. SubMenu1
           2. SubMenu2
           3. SubMenu3

如果在后台运行的进程 PROCESS 已完成,我想显示菜单 SubMenu1 和 Submenu2,否则我将只放置 SubMenu3,不包括 SubMenu1 和 SubMenu2。

我可以在onCreateOptionsMenu(Menu menu)方法中做出这个决定,但是如果用户在屏幕上并且过程完成,则应显示 SubMenu3 而不是先前显示的 SubMenus。

我相信这是可以做到的(因为 Play Store 应用程序在运行时添加了“我的应用程序”菜单)。我怎样才能做到这一点?

4

1 回答 1

0

您可以onCreateOptionsMenu(Menu)根据当前状态在那里实现和创建选项菜单。

每当该状态发生变化时,您都可以调用invalidateOptionsMenu()以指示需要重新创建选项菜单。这将重新创建菜单并再次调用onCreateOptionsMenu(Menu),如http://developer.android.com/reference/android/app/Activity.html#invalidateOptionsMenu%28%29中所述

于 2012-10-22T11:41:18.600 回答