Получить URI изображения, хранящегося в drawable
Я добавляю в свое приложение пару примеров, чтобы оно не выглядело таким пустым, когда пользователь смотрит на него в первый раз. В списке с образцами элементов должно быть изображение, а изображение, которое я собираюсь использовать, уже хранится в папке / res / drawable-приложения.
Поскольку у меня уже есть метод, который загружает изображения элементов из URI, я хотел бы получить URI в /res/drawable/myImage.jpg, но, похоже, я не могу понять это правильно.
Последовательность действий следующая: Создайте элемент со строкой, представляющей URI изображения. Отправить список элементов в список Список загружает изображение в фоновой задаче путем преобразования строки в URL и последующего выполнения url.openStream ();
Я безуспешно пробовал несколько вариантов URI. «android.resource: // . » сообщает о неизвестном протоколе «file: //» файл не найден
Так что сейчас я немного не понимаю, как это исправить .
5 ответов
Вы должны использовать ContentResolver для открытия URI ресурсов:
Также вы можете открывать URI файлов и контента, используя этот метод.
В самом простом виде .
Где «книга» — это имя файла в папке с возможностью переноса изображений.
Вы можете использовать Uri.Builder вместо конкатенации строк
Вот что вам действительно нужно:
На основе выше — доработанная версия для любого ресурса:
СПОР
это правильный ответ, однако часть о последних полях неверна — это не имеет ничего общего с ответом — Борис Треухов
@BorisTreukhov — пожалуйста, объясните нам, что вы имеете в виду под «часть о конечных полях не верна» — вопрос — как получить uri в . построить способ его анализа (как анализируется uri? см. ответ)
Источник
Как загрузить ImageView по URL-адресу в Android? [закрытый]
Как вы используете изображение, на которое ссылается URL в ImageView ?
23 ответов
убедитесь, что у вас есть следующие разрешения установить в свой AndroidManifest.xml для доступа в интернет.
сначала вам нужно загрузить изображение
затем используйте Imageview.setImageBitmap для установки растрового изображения в ImageView
1. Пикассо позволяет без проблем загружать изображения в вашем приложении-часто в одной строке кода!
Использовать Gradle:
только одна строка кода!
2. скольжения библиотека загрузки и кэширования изображений для Android, ориентированная на плавную прокрутку
использовать Gradle в:
// для простого просмотра:
3. фреска — это мощная система для отображения изображений в Android приложения.Fresco заботится о загрузке и отображении изображений, поэтому у вас нет к.
Я написал класс, чтобы справиться с этим, поскольку это, похоже, повторяющаяся потребность в моих различных проектах:
UrlImageViewHelper заполнит ImageView с найденным изображением по URL.
образец сделает Изображение Google Поиск и загрузка/показать результаты асинхронно.
UrlImageViewHelper будет автоматически загрузите, сохраните и кэшируйте все URL-адреса изображения в BitmapDrawables. Дубликаты url не будут загружаться в память дважды. Битовая память управляется используя слабую справочную хэш-таблицу, так что как только изображение больше не будет используется вами, это будет мусор собранные автоматически.
в любом случае люди просят мой комментарий опубликовать его в качестве ответа. я отправляю.
Источник