|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
22.10.2016, 19:37 | #1 |
Новичок
Джуниор
Регистрация: 22.10.2016
Сообщений: 17
|
setData() - выводит повторные значения
Здравствуйте. Подскажите пожалуйста что я делаю не так? У меня адаптер принимает данные с сервера и помещает их в листвью. Затем, когда поступают новые данные, я пытаюсь обновить адаптер...и как бы всё хорошо, но.. Когда приходят новые данные, например 2 сообщения, они добавляются в адаптер. Но вместе с новыми данными, добавляются и все остальные старые данные..Хотя по логам вижу что старых данных, поступивших с сервера у меня нет. Выходит что не выполняю data.clear(). Выполняю...data.clear(), мой листвью становится абсолютно пустым до следующего запроса Handler.postDelayed();. Снова запрос - листвью полный и с новыми данными...5 сек проходит и мой лист опять чистый...и так постоянно. Как это перебороть?
Код:
|
22.10.2016, 20:23 | #2 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
А остольной код можно посмотреть ? Ато так не понятно когда и где идет вызов некоторыез методов !
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
|
22.10.2016, 21:08 | #3 |
Новичок
Джуниор
Регистрация: 22.10.2016
Сообщений: 17
|
Вот обработка JSON
Код:
Код:
Код:
Код:
Последний раз редактировалось sergei0194; 22.10.2016 в 21:16. |
22.10.2016, 21:09 | #4 |
Новичок
Джуниор
Регистрация: 22.10.2016
Сообщений: 17
|
А вот и код моей активности
Код:
|
22.10.2016, 21:39 | #5 |
Новичок
Джуниор
Регистрация: 22.10.2016
Сообщений: 17
|
pompiduskus, у вас есть идеи? Скрипт работает ПОЧТИ как надо, всё прекрасно добавляет и обновляет. Но вот только почему он копирует предыдущие сообщения с теми же ID, NAME, MESSAGE? Была идея перебрать ArrayList<...> и если есть одинаковые ID, то их удалить. Но мне кажется что это всего на всего костыль, который ни как не канает использовать)
|
22.10.2016, 22:26 | #6 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
Не погу сказать со 100% уверенностью, но скорее всего так происходит вот из за этого куска кода
// Тут не понятно как отрабатывает метод addAll(); Код:
Я сам делаю все в ручную. вот так, это реальный кусок кода, дак что не обращай внимание на мусор Код:
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
|
22.10.2016, 22:43 | #7 |
Новичок
Джуниор
Регистрация: 22.10.2016
Сообщений: 17
|
Верно сказано `addAll(newData);`, всё дело в этой строке. Если убрать данный метод, то новые данные не отображаются. Из твоего куска кода я так понимаю что ты перебераешь старые данные? Дело в том что с использованием метода data.clear(), мои данные стираются полностью с листа, а через 5 сек снова появляются и старые и новые. Ну дело ясное почему "if(sAdapter == null)....else...". Выходит что всё-таки будет лучше перебирать массив, находить идентичные ID, и удалять их?
|
22.10.2016, 23:01 | #8 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
Тяжело так сказать.
Просто когда перебираешь в "ручную" все данные, то есть некий доп. контроль что-ли. Не могу подобрать слова. Попробуй, сделать так-как ты и сказал. Перебирай все данные, фильтруй, убирай дубликаты. И если это поможет, то хотя-бы будешь знать что проблема была именно в этом. Так как еще не факт что это будет именно так. Отпишись пожалуйсто, как будет продвижение. Мне интересно что там нет так шло.
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
|
22.10.2016, 23:26 | #9 |
Новичок
Джуниор
Регистрация: 22.10.2016
Сообщений: 17
|
Всё ясно, пошёл я за бубном да разжигать костёр По результатам обязательно отпишусь
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
значения массива считывается с файла, а повторные элементы этого массива выводятся во 2 файл C++ | carrie bradshaw | Помощь студентам | 5 | 03.02.2014 09:13 |
записать в файл массив, а в другой файл вывести повторные значения элементов массива С++ | carrie bradshaw | Помощь студентам | 3 | 01.02.2014 23:27 |
Не выводит значения | Rglore | Microsoft Office Excel | 9 | 09.11.2012 10:19 |
QT: QSqlQueryModel::setData() | driims | Qt и кроссплатформенное программирование С/С++ | 0 | 02.06.2009 14:48 |
Не выводит значения из базы данных | Linel | PHP | 13 | 26.02.2009 12:47 |