summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
authorDianne Hackborn <hackbod@google.com>2012-05-18 15:24:24 -0700
committerDianne Hackborn <hackbod@google.com>2012-05-18 15:51:27 -0700
commitfb5c3dba4ddac023cfd4cdcabdfdbcf343197c94 (patch)
tree7e5f150abce3402c987c4585e752020d796fec5d /core/java/android
parentd51ac09fd7db5d810452138749f9291617c0dbf7 (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-xcore/java/android/content/res/Resources.java15
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.