片段onCreateOptionsMenu没有被调用方向更改

时间:2013-06-12 09:07:04

标签: android android-optionsmenu

我在viewpager中有一个包含多个片段的活动。当我打开选项菜单时,它会将特定片段的菜单项添加到选项菜单中。我正在使用android 4.2并且android:configChanges="orientation"我没有添加screensize,因为我会在方向更改上创建哪些活动。

当我打开选项菜单时,会显示包括片段菜单项在内的所有菜单。但是,如果我在显示选项菜单时旋转设备,则仅显示选项菜单项活动。我检查它是因为当我改变方向时没有调用片段onCreateOptionsMenu。如何在更改方向时将片段选项菜单项添加到已显示的选项菜单中。

3 个答案:

答案 0 :(得分:4)

编辑:使用Android O时,不推荐使用supportInvalidateOptionsMenu。直接使用invalidateOptionsMenu()

这是对的。 Android会触发onConfigurationChanged

覆盖它并致电supportInvalidateOptionsMenu();

答案 1 :(得分:1)

通过在我的Fragment类setMenuVisibility(true);中调用onResume来完成。

答案 2 :(得分:0)

我通过致电来修复它:

setHasOptionsMenu(true)

在片段的onCreateView方法中