Android 保存操作栏状态

Android 保存操作栏状态,android,android-actionbar,actionbarsherlock,Android,Android Actionbar,Actionbarsherlock,在我的Android应用程序中,我使用的是ActionBar。我想使用操作栏左侧的徽标向用户显示一些状态。我可以这样做: ActionBar actionBar = getSupportActionBar(); actionBar.setIcon(R.drawable.new_icon); 它是有效的 问题是这种状态可能会持续。如果我更改活动ActionBarreset自身,则会显示默认徽标。有没有办法在应用程序运行时保存操作栏的状态?使用活动的标准生命周期回调 在活动的OnCreate方法中

在我的
Android
应用程序中,我使用的是
ActionBar
。我想使用
操作栏左侧的徽标向用户显示一些状态。我可以这样做:

ActionBar actionBar = getSupportActionBar();
actionBar.setIcon(R.drawable.new_icon);
它是有效的


问题是这种状态可能会持续。如果我更改活动
ActionBar
reset自身,则会显示默认徽标。有没有办法在应用程序运行时保存
操作栏的状态?

使用活动的标准生命周期回调

在活动的OnCreate方法中,尝试读取状态

public void onCreate(Bundle icicle) {
      if (data!=null)
      {
          ActionBar actionBar = getSupportActionBar();
          int state = data.getInt("status");
          if (state==1)
               actionBar.setIcon(R.drawable.icon_a);
          else
               actionBar.setIcon(R.drawable.icon_b);
      }
}
并保存状态,以便稍后恢复

protected void onSaveInstanceState(Bundle data) {
      super.onSaveInstanceState(data);
      data.putInt(icon_state);
}

你使用的是stock
ActionBar
还是
ActionBarSherlock
?@ss1271我使用的是
ActionBarSherlock
,我需要创建公共基类,然后它才能工作。