更改方向时,不会刷新Actionbar scherlock

Sav*_*nar 5 android actionbarsherlock android-actionbar

我在我的应用程序中使用Sherlock操作栏.我在菜单中使用了"ifRoom | withText"功能.如果我在纵向模式下测试我的代码,我只能看到图标,如果我将方向旋转到横向,我仍然只看到图标.另一方面,如果我使用横向运行,我可以在纵向和横向上看到文本和图标.这意味着当旋转屏幕时,不会刷新操作栏.我该怎么办?

在菜单中,我有

    android:showAsAction="ifRoom|withText"
Run Code Online (Sandbox Code Playgroud)

我也在清单文件中使用了这一行来修复

    android:configChanges="keyboardHidden|orientation|screenSize"
Run Code Online (Sandbox Code Playgroud)

但它不起作用.我运行我的代码android 2.3

我也在活动中使用片段,

        FragmentManager fm = getSupportFragmentManager();
    ft = fm.beginTransaction();

    mFragment1 = fm.findFragmentByTag("f1");

    if (mFragment1 == null) {

        mFragment1 = new MenuFragment();
        ft.add(mFragment1, "f1");

    }

    ft.commit();
Run Code Online (Sandbox Code Playgroud)

Jak*_*ton 6

ActionBarSherlock不支持处理配置更改.

在pre-ICS上,ActionBarSherlock不像本机操作栏那样是装饰视图的一部分,因此受到与内容视图相同的限制.通过处理配置更改,您不允许库适应更改,因此会看到错误的显示或某些部分.

Android文档也不鼓励处理配置更改.不惜一切代价避免使用它们,尤其是在使用ActionBarSherlock时.

在相关的说明中,我仍然试图解决这个库的未来版本,但现在建议避免使用.