diff options
| author | Dianne Hackborn <hackbod@google.com> | 2012-05-18 15:24:24 -0700 |
|---|---|---|
| committer | Dianne Hackborn <hackbod@google.com> | 2012-05-18 15:51:27 -0700 |
| commit | fb5c3dba4ddac023cfd4cdcabdfdbcf343197c94 (patch) | |
| tree | 7e5f150abce3402c987c4585e752020d796fec5d /core/java/android | |
| parent | d51ac09fd7db5d810452138749f9291617c0dbf7 (diff) | |
Fix issue #6440173: MenuItem.setIcon(Drawable) scaling incorrectly...
...when resource is aliased
We were not correctly using the final resolved configuration when
retrieving a drawable through Resources.getDrawable(). (It already
does the correct behavior when going through TypedArray.getDrawable()).
Change-Id: I9032b788b592412178e31e2e6b0181b92c20fe45
Diffstat (limited to 'core/java/android')
| -rwxr-xr-x | core/java/android/content/res/Resources.java | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/core/java/android/content/res/Resources.java b/core/java/android/content/res/Resources.java index c68285242dc4..c630bb51c96c 100755 --- a/core/java/android/content/res/Resources.java +++ b/core/java/android/content/res/Resources.java @@ -630,7 +630,20 @@ public class Resources { * Various types of objects will be returned depending on the underlying * resource -- for example, a solid color, PNG image, scalable image, etc. * The Drawable API hides these implementation details. - * + * + * <p class="note"><strong>Note:</strong> Prior to + * {@link android.os.Build.VERSION_CODES#JELLY_BEAN}, this function + * would not correctly retrieve the final configuration density when + * the resource ID passed here is an alias to another Drawable resource. + * This means that if the density configuration of the alias resource + * is different than the actual resource, the density of the returned + * Drawable would be incorrect, resulting in bad scaling. To work + * around this, you can instead retrieve the Drawable through + * {@link TypedArray#getDrawable TypedArray.getDrawable}. Use + * {@link android.content.Context#obtainStyledAttributes(int[]) + * Context.obtainStyledAttributes} with + * an array containing the resource ID of interest to create the TypedArray.</p> + * * @param id The desired resource identifier, as generated by the aapt * tool. This integer encodes the package, type, and resource * entry. The value 0 is an invalid identifier. |
