Сохранение сгенерированного во время выполнения NinePatch во внешней памяти

Я следую этому сообщению, чтобы создать девять патчей, доступных при запуске. время. Мне нужно сохранить изображение 9patch во внутренней/внешней памяти, чтобы я мог легко получить его URI и назначить его, например, ImageView. Кто-нибудь знает, как я могу этого добиться?

P.S. Метод Bitmap.compress не будет работать, потому что он сохранит изображение как обычный (не 9patch) файл png.

P.S. Я знаю, что могу сериализовать сгенерированный объект NinePatch и сохранить его в файл. Но таким образом я не могу назначить его объекту RemoteViews (используя метод RemoteViews.setImageViewUri). Поэтому мне нужно сохранить его как реальное изображение с девятью патчами.


person Ashkan Sarlak    schedule 22.12.2014    source источник


Ответы (1)


Вы можете сохранить изображение как Bitmap, а затем создать NinePatch, используя http://developer.android.com/reference/android/graphics/NinePatch.html#NinePatch(android.graphics.Bitmap, byte[])

person Diego Torres Milano    schedule 22.12.2014
comment
Мне нужно сохранить его как скомпилированный патч из девяти. Так что я могу напрямую назначить его ImageView (используя его URI). Поскольку это единственный способ установить девять исправлений, сгенерированных во время выполнения, на RemoteViews. - person Ashkan Sarlak; 23.12.2014