安卓系统:横向屏幕旋转后,打开的溢出菜单没有对齐



基本上,当我打开溢出菜单并旋转屏幕时,菜单会位于屏幕的中间(就像在纵向屏幕的右端一样(。

我使用通常的方法来膨胀菜单:

@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);

所以我注意到,如果工具栏和状态栏没有隐藏,菜单的行为是正确的,我只观察菜单是否打开/关闭,只有当溢出菜单关闭时,才会隐藏工具栏和状态条。然后按预期放置菜单。

最新更新