Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
route66
489 / 422 / 53
Регистрация: 29.04.2011
Сообщений: 443
#1

Корректное сохранение Drawable - Программирование Android

04.09.2014, 22:22. Просмотров 365. Ответов 0
Метки нет (Все метки)

Нужно просто сохранить Drawable во внутреннюю память.
Делать пробовал по-разному, но результат один и тот же: Drawable-файл R.drawable.ic_launcher сохраняется во внутреннюю память устройства, но почему-то в пустом виде. Вот один из многочисленных вариантов: Drawable (в виде raw-файла) порциями считывается в буфер bytes и пишется в "ic_launcher_copy.png" через OutputStream:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
public void saveRawDrawableToInternalStorage() {
        InputStream in = getResources().openRawResource(R.raw.ic_launcher);
        OutputStream out = null;
        try {
            out = openFileOutput("ic_launcher_copy.png", MODE_PRIVATE);
            byte[] bytes = new byte[1024];
            int length;
            while ((length = in.read(bytes)) != -1) {
                out.write(bytes, 0, length);
            }
        } catch (IOException e) {
            Log.e("Tag", "I/O Exception", e);
        } finally {
            if (out != null) {
                try {
                    out.close();
                    /* Load image and set it as background to ImageView (ivAvatar) */
                    String pathName = getFilesDir().toString() + "ic_launcher_copy.png";
                    Drawable drawable = Drawable.createFromPath(pathName);
                    ivAvatar.setBackground(drawable);
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (in != null) {
                try {
                    in.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.09.2014, 22:22     Корректное сохранение Drawable
Посмотрите здесь:

Работа с Drawable - Программирование Android
Закинул в res/drawable картинку png (1000×1000 30кб), ставлю ее на linear layout: linearlayout.setBackground (getResources ().getDrawable...

Ссылка на изображение drawable - Программирование Android
И так. У меня в папке drawable есть файл img.png мне нужно программно создать картинку и присвоить ей бекграунд по ссылке, важно то что...

Как принудительно выбрать drawable - Программирование Android
Вопрос в следующем, есть 4 drawable: drawable, drawable-hdpi, drawable-ldpi, drawable-mdpi В зависимости от разрешения экрана Android сам...

Создание Drawable shape, rectange - Программирование Android
Как сделать бордеры? след код ставит в бэкраунд полоску по центру:)... как ее сделать чтобы например с левой части контрола была, с...

Разместить Drawable посередине EditText - Программирование Android
Привет всем! Как разместить Drawable посередине в EditText? <View android:layout_width="wrap_content" ...

Не используются иконки из drawable-xxxhdpi - Программирование Android
Здравствуйте, я только начал осваивать андройд поэтому извините за возможно глупый вопрос. Поиски решения проблемы в интернете к...

Drawable hdpi, mdpi, xhdpi, xxhdpi - Программирование Android
Здравствуйте! Подскажите пожалуйста. Допустим я нарисовал фон для нескольких активити, иконку приложения, изображения для imageview.......

Разные drawable для маркера Google Maps - Программирование Android
Здравствуйте. Есть код главной активити @Override public void onCreate(Bundle savedInstanceState) { ...

IDE не видит файл .png в папке drawable - Программирование Android
В чем проблема? Размещайте изображения на форуме

Как посмотреть все drawable картинки, доступные в проекте - Программирование Android
В SDK Android есть множество картинок, подходящих для иконок, фона кнопок и др. А их можно как то посмотреть все сразу в проводнике? А то...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru