Android Actionbar自定义背景故障

时间:2012-12-31 23:35:19

标签: android android-actionbar drawable

我创建了一个名为ActionbarBackground的自定义Drawable类,它为我的Actionbar背景实现了一些特殊的绘图行为。当我在平板电脑上测试应用程序时,我得到以下故障:

当应用程序启动时,操作栏的内容将在背景下方绘制,从而推动整个活动的内容。

实施例: enter image description here

触摸屏幕后,重绘完成,动作栏的内容完全消失。然后,活动的内容会向上移动。

实施例: enter image description here

这个问题发生在两个活动中,我不知道为什么。我尝试从XML资源提供自定义drawable,一切正常,但这个背景需要编程绘图。

操作栏的设置如下:

this.getActionBar().setDisplayShowTitleEnabled(false);
this.getActionBar().setIcon(R.drawable.actionbar_icon_and_title);
this.getActionBar().setBackgroundDrawable(new ActionbarBackground(this));

ActionbarBackground的实现通常如下所示:

@Override
public void draw(Canvas canvas) 
{
    // Do special drawing on canvas object
}

@Override
public int getOpacity() {
    return PixelFormat.OPAQUE;
}

@Override
public void setAlpha(int alpha) {
    // Do nothing
}

@Override
public void setColorFilter(ColorFilter filter) {
    // Do nothing
}

为什么会发生这种情况以及如何解决这个问题?

0 个答案:

没有答案