Урок 52. SimpleCursorAdapter, пример использования

Обсуждение уроков
Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение Foenix » 03 июл 2013, 11:57

Сами вы список в любом случае даже при всем желании не перерисуете "каждый раз". Там меняется цвет элемента списка при обращении к нему ViewBinder-а.

Я бы написала свой адаптер - не так уж это сложно, как представляется, зато можно свободно модифицировать программу под более широкие нужды. Все таки эти простые адаптеры не зря так названы, вы слишком много от них хотите)
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Idol
Сообщения: 55
Зарегистрирован: 26 июн 2013, 04:33

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение Idol » 12 июл 2013, 05:26

Foenix писал(а):Сами вы список в любом случае даже при всем желании не перерисуете "каждый раз". Там меняется цвет элемента списка при обращении к нему ViewBinder-а.
Я имел ввиду, что вместо перерисовки всего одного элемента, перерисовывается весь список. И похоже другого пути нет. Сильно затратно. У Андроида был подобный косяк и с перетаскиванием объекта по экрану в ранних версиях.

Менять цвет textView в SimpleCursorAdapter можно, а вот чтобы поменять цвет всего элемента списка я пути не нашел.

Короче, нарисовал свой адаптер, все работает.
Всем спасибо за помощь.

Artemko
Сообщения: 26
Зарегистрирован: 16 июл 2012, 15:09

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение Artemko » 21 июл 2013, 10:44

я не понимаю в чем проблема, но когда я например записал в БД id определенной картинки, то после добавления в проект новых картинок вместо старой появляется новая, как будто их id меняются после добавления. В чем может быть проблема?

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение rezak90 » 21 июл 2013, 11:04

Artemko писал(а):я не понимаю в чем проблема, но когда я например записал в БД id определенной картинки, то после добавления в проект новых картинок вместо старой появляется новая, как будто их id меняются после добавления. В чем может быть проблема?
id каждый раз инкрементится при добавлении новой записи... и к тому же что такое что id увеличивается?
R.id.team
Политика на форуме запрещена

Artemko
Сообщения: 26
Зарегистрирован: 16 июл 2012, 15:09

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение Artemko » 21 июл 2013, 11:12

я записываю в БД картинку. в поле записывается число напимер 757459, потом я добавляю в проект новую картинку. запускаю приложение. читаю данные из бд и показывается уже другая картинка, как с этим бороться?

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение Foenix » 21 июл 2013, 11:18

это у вас уже 757459 картинок в базе??
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение rezak90 » 21 июл 2013, 11:40

Artemko писал(а):я записываю в БД картинку. в поле записывается число напимер 757459, потом я добавляю в проект новую картинку. запускаю приложение. читаю данные из бд и показывается уже другая картинка, как с этим бороться?
в какое поле записываете 757459 :?: , если в id таблицы то при следующей записи как я писал оно увеличивается автоматом, в таком случае выделите столбец именно для вашего идентификатора
R.id.team
Политика на форуме запрещена

Artemko
Сообщения: 26
Зарегистрирован: 16 июл 2012, 15:09

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение Artemko » 21 июл 2013, 15:55

я не правильно объясняю. id таблицы тут вообще не при чем. Не знаю как понятней объяснить.
Есть картинка. R.drawable.icon. C помощью SimpleCursorAdapter я вместе с данными заношу ее в SQLite DB.
При отображении данных картинка считывается из БД и нормально отображается.
После этого я добавляю в проект новую картинку. R.drawable.icon2.
Запускаю приложение и вместо того чтоб вывести R.drawable.icon он уже выводит R.drawable.icon2 или вообще какую нибудь другую картинку.

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение rezak90 » 21 июл 2013, 16:28

то есть вы храните айди ресурсника? мда ну и велосипед же))) мало того что это ужасно, так вы не подумали что id ресурсов каждый раз может меняться и не известно какой id присвоит в следующий раз система. Так что меняйте логику, а лучше скажите что вам нужно.
R.id.team
Политика на форуме запрещена

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение Foenix » 21 июл 2013, 16:58

Artemko писал(а):я не правильно объясняю. id таблицы тут вообще не при чем. Не знаю как понятней объяснить.
Есть картинка. R.drawable.icon. C помощью SimpleCursorAdapter я вместе с данными заношу ее в SQLite DB.
При отображении данных картинка считывается из БД и нормально отображается.
После этого я добавляю в проект новую картинку. R.drawable.icon2.
Запускаю приложение и вместо того чтоб вывести R.drawable.icon он уже выводит R.drawable.icon2 или вообще какую нибудь другую картинку.
так нельзя. Обычно, когда работают с ресурсами в таблицах хранят пути к ним.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Artemko
Сообщения: 26
Зарегистрирован: 16 июл 2012, 15:09

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение Artemko » 21 июл 2013, 18:02

а как тогда присваивать ImageView картинку?

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение rezak90 » 21 июл 2013, 18:24

Artemko писал(а):а как тогда присваивать ImageView картинку?
омг... iv.setImageResource(R.drawable.my_image); не?
R.id.team
Политика на форуме запрещена

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение Foenix » 21 июл 2013, 18:26

мы не знаем что у тебя за цель, гадать неахота.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Artemko
Сообщения: 26
Зарегистрирован: 16 июл 2012, 15:09

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение Artemko » 21 июл 2013, 19:05

сначала в бд заносится адрес картинки, потом отображается список.
так как тот способ не подходит, нужен другой чтоб вставлять адрес картинки, но через SimpleCursorAdapter я не знаю как сделать

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение Foenix » 21 июл 2013, 19:24

я все равно не поняла - что именно нужно?
если у тебя конечное число картинок, или пользователь свои добавляет? или откуда они берутся?
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

dimich
Сообщения: 14
Зарегистрирован: 17 июл 2013, 16:13

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение dimich » 25 июл 2013, 17:24

Всем доброго времени суток.
Прошу помощи, т.к. зашел в тупик.
Для начал представлюсь, т.к. теперь понимаю, что вопросы только начинаются. Зовут Дмитрием. Мне 31 и занимаюсь я деятельностью не связанной с ИТ. Андроид стал изучать для себя - в качестве хобби. Дошел до 50-х уроков и чувствую что "плыву".

Чтобы не скучно было учиться - я сразу ставлю себе цель. В случае с изучением Андроида она появилась очень быстро - это конкретное приложение "Учет заказов".
Моё виденье:

Три таблицы:
1) Клиенты (Имя, Телефон, Адрес, Примечание)
2) Продукция (Наименование, признак категории, id категории, единица измерения, цена единицы)
3) Заказы (Дата, id клиента, id продукции, количество, сумма)
Без заморочек - везде, кроме id параметров - текстовые поля.

Экраны (Активити):
1) 3 кнопки - Клиенты, Продукция, Заказы
2) Список клиентов - как на скриншоте
3) Список Продукции
4) Список заказов

Что должно быть еще:
1) Экраны (Активити???) добавления/редактирования Клиентов/Продукции/Заказов

Теперь вопросы, которые накопились и добавились после этого урока:
1) Как правильно построить приложение, а именно: экраны добавления/редактирования - это отдельные активити или можно через Диалоги или можно через Фрагменты (п.с. заглянул вперед)?
2) Как правильно построить работу с БД? В этому уроке у нас появился класс DB.java (кстати, у него есть суперкласс?)
3) Как правильно осуществлять переходы между "экранами" (Активити)?
4) Что еще выносить в отдельные классы и с какими супер-класами.
5) Как правильно использовать Intent? Он используется для вызова всех активити?

Скриншот который приложен - это реализация в основном на основе уроков
Урок 48. Используем SimpleAdapter - вывожу список клиентов и
Урок 35. SQLite. Методы update и delete с указанием условия - временно использую для добавления, удаления и редактирования записей.

Прошу сильно не пинять и помочь разобраться.

П.С. Не нашел спойлера и как вставить уменьшенный аттачмент
Вид списка клиентов
Вид списка клиентов
Screenshot_2013-07-25-16-57-25.png (160.04 КБ) 11635 просмотров

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение Foenix » 25 июл 2013, 18:03

Димыч, обращайся ко мне в скайп, я тебе помогу.
Последний раз редактировалось Foenix 27 июл 2013, 02:10, всего редактировалось 1 раз.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение rezak90 » 25 июл 2013, 18:40

Foenix писал(а):Димыч, обращайся ко мне в скайп, я тебе помогу.
foenix00001
не забывай что 50% выручки мои как гендиректор.!!!
R.id.team
Политика на форуме запрещена

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение Foenix » 25 июл 2013, 21:16

чо ты народ пугаешь, я бесплатно ;)
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

dimich
Сообщения: 14
Зарегистрирован: 17 июл 2013, 16:13

Re: Урок 52. SimpleCursorAdapter, пример использования

Сообщение dimich » 25 июл 2013, 21:19

Foenix писал(а):Димыч, обращайся ко мне в скайп, я тебе помогу.
foenix00001
Заранее большое спасибо. Завтра стукнусь - сейчас с мобильного.... учу "матчасть" :)

Ответить