NinePatchDrawable не получает отступ от чанка

Мне нужна помощь с NinePatchDrawable:

Мое приложение может загружать темы из сети. Почти все работает нормально, кроме PNG с 9 патчами.

final Bitmap bubble = getFromTheme("bubble");
if (bubble == null) return null;

final byte[] chunk = bubble.getNinePatchChunk();
if (!NinePatch.isNinePatchChunk(chunk)) return null;

NinePatchDrawable d = new NinePatchDrawable(getResources(), bubble, chunk, new Rect(), null);
v.setBackgroundDrawable(d);

d = null;
System.gc();

getFromTheme () загружает растровое изображение с SD-карты. PNG с 9 патчами уже скомпилированы, это означает, что они включают в себя необходимый фрагмент.

Кажется, работает способ преобразования растрового изображения в объект NinePatchDrawable, потому что изображение растягивается так же, как я его нарисовал.

Единственное, что не работает, это заполнение. Я уже пытался установить отступ для вида следующим образом:

final Rect rect = new Rect();   // or just use the new Rect() set
d.getPadding(rect);             // in the constructor
v.setPadding(rect.left, rect.top, rect.right, rect.bottom);

d.getPadding (rect) должен заполнить переменную rect заполнением, полученным из фрагмента, не так ли? Но это не так.

Результат: TextView (v) не показывает текст в области содержимого изображения 9-Patch. Отступы установлены в 0 в каждой координате.

Спасибо за прочтение.

Ответы на вопрос(4)

Ваш ответ на вопрос