Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android抽屉布局-actionbar将颜色更改为近白色_Android_Actionbarsherlock_Drawerlayout - Fatal编程技术网

Android抽屉布局-actionbar将颜色更改为近白色

Android抽屉布局-actionbar将颜色更改为近白色,android,actionbarsherlock,drawerlayout,Android,Actionbarsherlock,Drawerlayout,我们有一个使用ActionBarSherlock的应用程序。操作栏的背景是一个可绘制的,它是在运行时创建的,因此我们可以更改颜色 我想添加抽屉布局。在我的测试中,有时背景颜色会变为接近白色。如果我将文本设置为#FFF,它看起来比背景更白 如果我让菜单启动一个活动,然后我回击,我可以让它重现。这种情况似乎在其他时候也会发生——可能与设备进入睡眠状态有关 如果操作栏变成白色,我打开抽屉,它就会重新绘制为正确的背景色。我已经在ADT中设置了断点,并且似乎可以在需要时调用这些方法,所以我不知道是什么触发

我们有一个使用ActionBarSherlock的应用程序。操作栏的背景是一个可绘制的,它是在运行时创建的,因此我们可以更改颜色

我想添加抽屉布局。在我的测试中,有时背景颜色会变为接近白色。如果我将文本设置为#FFF,它看起来比背景更白

如果我让菜单启动一个活动,然后我回击,我可以让它重现。这种情况似乎在其他时候也会发生——可能与设备进入睡眠状态有关

如果操作栏变成白色,我打开抽屉,它就会重新绘制为正确的背景色。我已经在ADT中设置了断点,并且似乎可以在需要时调用这些方法,所以我不知道是什么触发了颜色更改

抽屉布局是否有问题,ABS是否还没有准备好使用抽屉布局,或者我是否需要执行其他操作,如使某些视图无效,以便颜色始终正确显示

编辑: 我想这就解决了。我会继续测试

@Override
protected void onPostCreate(Bundle savedInstanceState) {
    super.onPostCreate(savedInstanceState);

    // Sync the toggle state after onRestoreInstanceState has occurred.
    drawerToggle.syncState();
    supportInvalidateOptionsMenu();
}

每当您向布局中添加视图时,我总是在将其添加到布局后将其置于无效状态。在将视图添加到布局后尝试运行invalidate。使哪个组件无效?我个人没有使用ActionBarSherlock,但如果您在运行时添加视图,请在之后对其使用invalidate。我对Android app compat版本的操作栏有同样的问题,但没有任何自定义布局,只要使用标准的支持操作栏,如果我在它下面滚动一个动态创建的视图,然后点击返回,它就会变成白色。你的解决方案对我有效。谢谢