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

Загрузка векторного изображения из внешней памяти - Android

Войти
Регистрация
Восстановить пароль
 
OlegJV
 Аватар для OlegJV
100 / 100 / 29
Регистрация: 13.03.2016
Сообщений: 454
26.09.2016, 16:55     Загрузка векторного изображения из внешней памяти #1
Доброго дня всем. Такая проблема возникла, уже весь мозг сломал. Согласно нынешней моде повсеместно перехожу на векторные изображения. Пока речь шла о ресурсах, все было нормально. Сконвертированные в AssetStudio svg файлы из InkScape отображаются отлично. Но вот возникла необходимость загрузить вектор с внешней памяти - и полный тупик.

Попробовал стандартную иконку в xml.
Код:

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
File file = new File(ROOT + path);
        if (!isExternalAvailable()) return null;
        try {
            XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
            factory.setNamespaceAware(true);
            XmlPullParser parser = factory.newPullParser();
            if (file.exists()) {
                try {
                    FileInputStream is = new FileInputStream(file);
                    BufferedReader br = new BufferedReader(new FileReader(file));
                    String s = "";
                    while (br.readLine() != null) {
                        s = s + br.readLine();
                    }
                    parser.setInput(new StringReader(s));
                    is.close();
                }
                catch (FileNotFoundException e) {  
                       // вылезает ошибка
                      // org.xmlpull.v1.XmlPullParserException: Unexpected token (position:TEXT xmlns:android="h...@1:139 in  
                     //java.io.StringReader@326344b2) 
                    return null;
                }
            }

Какие-то проблемы с заголовком файла, как я понимаю. Добавил в файл:
XML
1
<?xml version="1.0" encoding="UTF-8" standalone="yes"
Вылезла новая ошибка: expected: name

Методы VectorDrawableCompat.createFromStream() и VectorDrawableCompat.createFromPath() выдают null.

Никто не сталкивался с таким вопросом?

Добавлено через 1 минуту
Да, в логах строки из файла считываются. Но метод VectorDrawableCompat.createFromXml - null/

Добавлено через 57 секунд
В Gradle добавлено:

Java
1
2
3
vectorDrawables.useSupportLibrary = true
 
compile 'com.android.support:appcompat-v7:24.2.1'
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.09.2016, 16:55     Загрузка векторного изображения из внешней памяти
Посмотрите здесь:

Android Загрузка изображения
Android Загрузка изображения на стену vkontakte Android
Загрузка и отображение большого количества картинок с памяти телефона Android
Подключение к внешней БД из приложения на Android Android
Считать изображения из памяти Android
Загрузка изображения jpg.to Android
Android Дополнительный функционал paint (загрузка изображения)
Android Загрузка изображения
Очистка памяти на андроиде без внешней sd Android
Загрузка изображения в imageview Android
Android Получить доступ к внешней карте памяти (Android 6)
Android RecyclerView.Adapter загрузка изображения

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

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

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