summaryrefslogtreecommitdiffstats
path: root/src/android
diff options
context:
space:
mode:
Diffstat (limited to 'src/android')
-rw-r--r--src/android/jar/src/org/qtproject/qt5/android/ExtractStyle.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/android/jar/src/org/qtproject/qt5/android/ExtractStyle.java b/src/android/jar/src/org/qtproject/qt5/android/ExtractStyle.java
index 46a443c365..3f74383a82 100644
--- a/src/android/jar/src/org/qtproject/qt5/android/ExtractStyle.java
+++ b/src/android/jar/src/org/qtproject/qt5/android/ExtractStyle.java
@@ -794,7 +794,14 @@ public class ExtractStyle {
private JSONObject findPatchesMarings(Drawable d) throws JSONException, NoSuchFieldException, IllegalAccessException
{
- NinePatch np = (NinePatch) getAccessibleField(NinePatchDrawable.class, "mNinePatch").get(d);
+ NinePatch np;
+ Field f = tryGetAccessibleField(NinePatchDrawable.class, "mNinePatch");
+ if (f != null) {
+ np = (NinePatch) f.get(d);
+ } else {
+ Object state = getAccessibleField(NinePatchDrawable.class, "mNinePatchState").get(d);
+ np = (NinePatch) getAccessibleField(state.getClass(), "mNinePatch").get(state);
+ }
if (Build.VERSION.SDK_INT < 19)
return getJsonChunkInfo(extractChunkInfo((byte[]) getAccessibleField(np.getClass(), "mChunk").get(np)));
else