代码之家  ›  专栏  ›  技术社区  ›  Robby Smet

强制刷新SherlockActionbar

  •  0
  • Robby Smet  · 技术社区  · 12 年前

    我使用ActionbarSherlock库,用这种方法将蓝线替换为另一种颜色。

    我有一个不同的抽屉,用于在线、离线和连接。因此,在xml主题中设置颜色不是一个选项。

    getSupportActionBar().setBackgroundDrawable(getResources().getDrawable(R.drawable.ab_transparent_disconnected));
    

    enter image description here
    在我的nexus 4(Android 4.3)上,这非常完美,线条的颜色会立即改变,
    但在我的galaxy S2 mini(Android 2.3.6)上,在打开导航抽屉之前,什么都不会发生,然后颜色也会改变。

    如何强制刷新操作栏,使所有设备上的颜色立即发生变化?

    谢谢

    1 回复  |  直到 12 年前
        1
  •  1
  •   Robby Smet    12 年前

    解决方案是打电话 this.supportInvalidateOptionsMenu(); 设置背景后Drawable