基本上,当我打开溢出菜单并旋转屏幕时,菜单变得位于屏幕中间(因为它位于纵向屏幕右端)。
我使用通常的方法来夸大菜单:
@Override
public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater);
inflater.inflate(R.menu.my_menu, menu);
}
唯一需要注意的是,当发生此问题时,我会隐藏工具栏和状态栏。如果没有隐藏工具栏,它可以正常工作。
activity.getSupportActionBar().hide()
activity.getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE);
setFooterVisible(false);
答案 0 :(得分:0)
因为我注意到如果工具栏和状态栏没有隐藏,菜单行为正常,我只是观察菜单是否打开/关闭,只有当溢出菜单关闭时才隐藏工具栏和状态栏。然后菜单按预期放置。