Страница 1 из 1
Помогите пожалуста с SQLite
Добавлено: 27 июн 2015, 13:02
Евгений27
Суть проблемы в том что в папке drawable,есть несколько картинок,хочу в базу прописать ссылки на них,и где нужно отображать потом в imageview,подскажите как хранить в базе ссылки на эти самые картинки а потом отображать их,извините если нубский вопрос,не могу осилить...
Re: Помогите пожалуста с SQLite
Добавлено: 27 июн 2015, 14:44
Foenix
нельзя ссылаться на картинки в пакете. Вначале их записывают обычно в assets, а при первом запуске программы копируют в папку программы для использования.
Наверное и ссылки в базе прописывают при этом.
Re: Помогите пожалуста с SQLite
Добавлено: 27 июн 2015, 16:02
Dark67
Из кода к папке drawable можно обратиться так
getResources().getDrawable(int id);
Поэтому попробуйте в БД хранить id картинок.
А в ImageView их подключать с помощью setImageDrawable(Drawable drawable)
или сразу через setImageResource(int id)
Но пока не знаю будет ли Ваша схема работать.
Re: Помогите пожалуста с SQLite
Добавлено: 27 июн 2015, 17:02
Евгений27
Хорошо,а как тогда вообще с помощью базы хранить и выводить картинки?Знаю,можно хранить в виде бинарного кода,а потом через массив преобразовывать их в картинку,но только такой метод не подходит,если картинок очень много,то соответственно и база будет неподьемная для устройства,не знаю что теперь и делать,буду как-то искать выход...
Re: Помогите пожалуста с SQLite
Добавлено: 27 июн 2015, 20:23
doter.ua
Dark67 писал(а):Из кода к папке drawable можно обратиться так
getResources().getDrawable(int id);
Поэтому попробуйте в БД хранить id картинок.
А в ImageView их подключать с помощью setImageDrawable(Drawable drawable)
Но пока не знаю будет ли Ваша схема работать.
getDrawable тепер с двумя параметрами (для лолипоп)
Re: Помогите пожалуста с SQLite
Добавлено: 30 июн 2015, 19:53
Евгений27
Всем спасибо,все сделал с помощью getIdentifier();
Re: Помогите пожалуста с SQLite
Добавлено: 02 июл 2015, 07:53
Yennefer
Dark67 писал(а):Из кода к папке drawable можно обратиться так
getResources().getDrawable(int id);
Поэтому попробуйте в БД хранить id картинок.
А в ImageView их подключать с помощью setImageDrawable(Drawable drawable)
или сразу через setImageResource(int id)
Но пока не знаю будет ли Ваша схема работать.
Работать не будет. Пробовала делать так, но id картинок в drawable могут непредсказуемо меняться. Поэтому храню картинки в assets, в базе храню только их названия.
Foenix писал(а):нельзя ссылаться на картинки в пакете. Вначале их записывают обычно в assets, а при первом запуске программы копируют в папку программы для использования.
Наверное и ссылки в базе прописывают при этом.
Для чего их копируют на устройство?
Re: Помогите пожалуста с SQLite
Добавлено: 02 июл 2015, 10:07
Foenix
Для того, чтобы использовать по назначению, а айди, как вы правильно заметили, это тупиковый путь.
В гугле полно примеров кода того что я сказала.
Re: Помогите пожалуста с SQLite
Добавлено: 02 июл 2015, 21:20
Евгений27
Foenix писал(а):Для того, чтобы использовать по назначению, а айди, как вы правильно заметили, это тупиковый путь.
В гугле полно примеров кода того что я сказала.
Не знаю,юзаю getIdentifier(), пока проблем не было,после добавления в картинок в папку drawable проследил что-бы в файле R.java назначились идентификаторы и все корректно работает...