我必须动态更改onCreateOptionsMenu
项目。我正在从 Web 服务中获取项目。但问题是该服务onCreate()
在一个AsyncTask
类中被调用,因此在来自服务的数据到达之前onCreateOptionsMenu
被调用并返回NullPointerException
。
这是我调用该函数的方式:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// super.onCreateOptionsMenu(menu);
getMenuInflater().inflate(R.menu.action_bar_menu, menu);
item = menu.findItem(R.id.CurrentUser);
UserName = con.getResources().getString(R.string.WelcomeUser) + " "
+ UserName + "!";
item.setTitle(UserName);
if (IsCorporateAccount) {
menu.getItem(6).setVisible(true);
} else {
menu.getItem(6).setVisible(false);
}
objGetBalanceDetails.CreateMenu(menu);
// Menu menu1 = null;
// menu1.findItem(R.id.Home).setVisible(false);
return true;
}