我正在尝试根据可见的片段在我的操作栏中显示/隐藏项目。
在我的 MainActivity 我有以下
/* Called whenever invalidateOptionsMenu() is called */
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
if(this.myFragment.isVisible()){
menu.findItem(R.id.action_read).setVisible(true);
}else{
menu.findItem(R.id.action_read).setVisible(false);
}
return super.onPrepareOptionsMenu(menu);
}
这很好用,但是当设备旋转时会出现问题。旋转完成后,再次调用 onPrepareOptionsMenu 但是这次this.myFragment.isVisible() 返回 false ...因此当片段清晰可见时菜单项被隐藏(就屏幕上显示的内容而言)。