Android 获取有关方向更改的操作栏显示选项
我试图保存actionbar显示选项,这样当方向改变时,我就可以恢复它的值Android 获取有关方向更改的操作栏显示选项,android,android-actionbar,orientation-changes,Android,Android Actionbar,Orientation Changes,我试图保存actionbar显示选项,这样当方向改变时,我就可以恢复它的值 @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // ... if (savedInstanceState != null) { actionbar.setDisplayOptions(savedInstanceState.ge
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
// ...
if (savedInstanceState != null) {
actionbar.setDisplayOptions(savedInstanceState.getInt("ab_displayoptions"));
}
// ...
}
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putInt("ab_displayoptions", actionBar.getDisplayOptions());
}
但是,当我尝试在onCreateView()中获取值时,我得到以下结果:
Must be one or more of: ActionBar.DISPLAY_USE_LOGO, ActionBar.DISPLAY_SHOW_HOME, ActionBar.DISPLAY_HOME_AS_UP, ActionBar.DISPLAY_SHOW_TITLE, ActionBar.DISPLAY_SHOW_CUSTOM
还有其他更好的方法吗?getDisplayOptions返回一个int,而不是long。此外,还要检查它是否已设置。试试这个: 获取状态:
if (savedInstanceState != null) {
int opts = savedInstanceState.getInt("ab_displayoptions", -1);
if (opts != -1) {
actionbar.setDisplayOptions(opts);
}
}
保存状态:
outState.putInt("ab_displayoptions", actionBar.getDisplayOptions());