Fix setting action bar backgrounds after layout

Fix a bug that would prevent the drawable bounds from being set
correctly for action bar containers.

Change-Id: I396aa40e3d8f6e3b47bcd438e1f26bbfc7b20a7f
This commit is contained in:
Adam Powell
2013-02-08 17:32:24 -08:00
parent 970b8b3fa9
commit e8c8ae401b

View File

@@ -84,6 +84,10 @@ public class ActionBarContainer extends FrameLayout {
mBackground = bg;
if (bg != null) {
bg.setCallback(this);
if (mActionBarView != null) {
mBackground.setBounds(mActionBarView.getLeft(), mActionBarView.getTop(),
mActionBarView.getRight(), mActionBarView.getBottom());
}
}
setWillNotDraw(mIsSplit ? mSplitBackground == null :
mBackground == null && mStackedBackground == null);
@@ -98,6 +102,10 @@ public class ActionBarContainer extends FrameLayout {
mStackedBackground = bg;
if (bg != null) {
bg.setCallback(this);
if ((mIsStacked && mStackedBackground != null)) {
mStackedBackground.setBounds(mTabContainer.getLeft(), mTabContainer.getTop(),
mTabContainer.getRight(), mTabContainer.getBottom());
}
}
setWillNotDraw(mIsSplit ? mSplitBackground == null :
mBackground == null && mStackedBackground == null);
@@ -112,6 +120,9 @@ public class ActionBarContainer extends FrameLayout {
mSplitBackground = bg;
if (bg != null) {
bg.setCallback(this);
if (mIsSplit && mSplitBackground != null) {
mSplitBackground.setBounds(0, 0, getMeasuredWidth(), getMeasuredHeight());
}
}
setWillNotDraw(mIsSplit ? mSplitBackground == null :
mBackground == null && mStackedBackground == null);