如何根据Android中的服务器响应启用/禁用操作栏上的选项菜单项

时间:2017-09-01 06:12:48

标签: java android

我想根据Android中的服务器响应启用/禁用操作栏上的选项菜单项。我可以使用此代码禁用选项菜单

@Override
public boolean onPrepareOptionsMenu (Menu menu) {
    if (isFinalized) {
        menu.getItem(1).setEnabled(false);
    }
    return true;
}

但我需要的是,我想用服务器响应键

禁用菜单项

提前致谢

2 个答案:

答案 0 :(得分:2)

  

试试这个:

std::unordered_set

答案 1 :(得分:2)

您需要将Menu对象存储在ActivityFragment中,无论您使用哪个。

private Menu mMenu;

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    mMenu = menu;
}

在您的服务器响应类中(例如AsyncTaskVolley等),在响应访问mMenu对象并更新后。

 menu.getItem(id).setVisible(false);    // do whatever operation you want 
 invalidateOptionsMenu();