1

我正在向操作栏中添加一个项目,当活动首次加载时,该项目仅存在于操作栏中是正确的。然后,当我进行另一项活动并通过Intent该菜单项返回时,该菜单项会重复。它仍然显示在操作栏中,但也显示在菜单中。

这是我的代码从一个活动到另一个活动。这是来自添加屏幕到主屏幕。当它进入主屏幕时,添加操作栏项目会同时显示在菜单和操作栏中。当 Home 最初加载时,它只会像应有的那样显示在操作栏中。

Intent intent = new Intent(Add.this, Home.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
//intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);

这是我的家庭活动菜单充气机

public boolean onCreateOptionsMenu(Menu menu){
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.gas_menu, menu);
    return true;
}

此活动正在扩展 tabactivity,这可能是它未重新加载的原因。我对一个类扩展活动做了一个小测试,它似乎工作正常。我可能应该只替换选项卡活动,因为它已被弃用。

4

1 回答 1

0

确保调用 super.onCreateOptionsMenu(menu) 而不是总是返回 true。我尝试了这段代码,它对我有用。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    final MenuInflater menuInflater = getMenuInflater();
    menuInflater.inflate(R.menu.your_menu_file, menu);
    return super.onCreateOptionsMenu(menu);
}
于 2013-08-16T16:09:16.410 回答