0

我使用以下代码在活动中创建菜单:

@Override
public boolean onCreateOptionsMenu(Menu menu) {

getMenuInflater().inflate(R.menu.menu1, menu);

return true;

}

但是,我可以随时打开和关闭菜单。我希望如果布尔值为真,则可以打开菜单,如果布尔值为假,则用户应该无法打开菜单...

4

2 回答 2

1

只需在您的代码中添加一个 if 语句

@Override
public boolean onCreateOptionsMenu(Menu menu) {
if(yourbooleanvariable)
getMenuInflater().inflate(R.menu.menu1, menu);
return true;
}

如果您想保留布尔变量的值,请使用 sharedpreferences 这里是链接 How to use SharedPreferences in Android to store, fetch and edit values

于 2013-11-04T11:23:41.640 回答
0

我想你可以在函数中添加一个 if 语句:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    bool x = true;
    if(x){
       getMenuInflater().inflate(R.menu.menu1, menu);
       return true;
    } else {
      return false;
    }
}
于 2013-11-04T11:19:18.217 回答