diff options
Diffstat (limited to 'core/java/android/widget/ProgressBar.java')
-rw-r--r-- | core/java/android/widget/ProgressBar.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/core/java/android/widget/ProgressBar.java b/core/java/android/widget/ProgressBar.java index 2f28d9f..54269e1 100644 --- a/core/java/android/widget/ProgressBar.java +++ b/core/java/android/widget/ProgressBar.java @@ -177,6 +177,7 @@ public class ProgressBar extends View { Drawable drawable = a.getDrawable(R.styleable.ProgressBar_progressDrawable); if (drawable != null) { drawable = tileify(drawable, false); + // guess mMaxHeight. but allow XML layout to override this. setProgressDrawable(drawable); } @@ -421,6 +422,13 @@ public class ProgressBar extends View { public void setProgressDrawable(Drawable d) { if (d != null) { d.setCallback(this); + + // without this code, progress bar height will be updated. + int drawableHeight = drawable.getMinimumHeight(); + if (mMaxHeight < drawableHeight) { + mMaxHeight = drawableHeight; + requestLayout(); + } } mProgressDrawable = d; if (!mIndeterminate) { |