LayoutLib: Fix bitmap scaling.
Bug: http://b.android.com/187939 Change-Id: I20bf61746e8af3bb87ba9cfcc9bf58854ac7c5be
This commit is contained in:
@@ -18,6 +18,7 @@ package android.content.res;
|
||||
|
||||
import com.android.SdkConstants;
|
||||
import com.android.ide.common.rendering.api.ArrayResourceValue;
|
||||
import com.android.ide.common.rendering.api.DensityBasedResourceValue;
|
||||
import com.android.ide.common.rendering.api.LayoutLog;
|
||||
import com.android.ide.common.rendering.api.LayoutlibCallback;
|
||||
import com.android.ide.common.rendering.api.ResourceValue;
|
||||
@@ -661,13 +662,18 @@ public final class BridgeResources extends Resources {
|
||||
Pair<String, ResourceValue> value = getResourceValue(id, mPlatformResourceFlag);
|
||||
|
||||
if (value != null) {
|
||||
String v = value.getSecond().getValue();
|
||||
ResourceValue resVal = value.getSecond();
|
||||
String v = resVal.getValue();
|
||||
|
||||
if (v != null) {
|
||||
if (ResourceHelper.parseFloatAttribute(value.getFirst(), v, outValue,
|
||||
false /*requireUnit*/)) {
|
||||
return;
|
||||
}
|
||||
if (resVal instanceof DensityBasedResourceValue) {
|
||||
outValue.density =
|
||||
((DensityBasedResourceValue) resVal).getResourceDensity().getDpiValue();
|
||||
}
|
||||
|
||||
// else it's a string
|
||||
outValue.type = TypedValue.TYPE_STRING;
|
||||
|
||||
@@ -59,6 +59,7 @@ import java.util.Set;
|
||||
if (opts.inPremultiplied) {
|
||||
bitmapCreateFlags.add(BitmapCreateFlags.PREMULTIPLIED);
|
||||
}
|
||||
opts.inScaled = false;
|
||||
}
|
||||
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user