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

Программирование Android

Войти
Регистрация
Восстановить пароль
 
PhantomR
5 / 5 / 0
Регистрация: 04.02.2016
Сообщений: 74
#1

RSS reader by XmlPullParser + Listview - Программирование Android

16.08.2016, 15:01. Просмотров 264. Ответов 11
Метки нет (Все метки)

Написал программу для чтения RSS: https://github.com/PhantomRec/RSS

Всё работает, но проблема в том, что показывает 5-7 тем, далее темы повторяются, но почему-то в хаотическом порядке. При этом парсит все заголовки и все картинки, что видно из логов (RSSParser). Не могу понять в чём причина. Кто поможет? где ошибка?
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.08.2016, 15:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос RSS reader by XmlPullParser + Listview (Программирование Android):

Rss reader - parse xml - Программирование Android
http://buxoro.uz/uz/yangiliklar.xml how to parse this xml . . help me please......

Медленный XmlPullParser - Программирование Android
Всем привет! Собственно проблема всего лишь в скорости работы, по логам посмотрел что медленно грузит так это именно: ...

Самозакрывающийся тег XmlPullParser - Программирование Android
Здравствуйте уважаемые форумчане! Возникла проблемка: не могу спарсить самозакрывающийся тег: <string/> Когда парсер нактнется на...

XmlPullParser - проверка существования атрибута - Программирование Android
Добрый день. Возникла необходимость проверять наличие в xml файле какого-либо атрибута. Подскажите метод, если таковой есть. В гугле и...

XmlPullParser неправильно получает значения - Программирование Android
Здравствуйте. Пытаюсь написать обработку XML сообщения от сервера, получить правильно данные (ссылку на изображение и имя), загрузить...

XMLPullParser чтение русских символов - Программирование Android
Здравствуйте. Согласно заданию, необходимо написать парсер, который будет эммм... парсить(масло масленое) вот эту вот страницу...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
androbro
326 / 286 / 60
Регистрация: 17.10.2014
Сообщений: 843
17.08.2016, 09:04 #2
PhantomR, причина по всей видимости в переиспользовании элементов ListView
0
PhantomR
5 / 5 / 0
Регистрация: 04.02.2016
Сообщений: 74
17.08.2016, 09:09  [ТС] #3
Что вы имеете ввиду? Заменить на Recycler View?
0
androbro
326 / 286 / 60
Регистрация: 17.10.2014
Сообщений: 843
17.08.2016, 09:10 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
PhantomR, ну собственно говоря, как я и предполагал, вот этот участок кода, который обуславливает такое поведение:
Java
1
2
3
4
if (convertView == null) {
    ....
}
return convertView;
Добавлено через 1 минуту
Цитата Сообщение от PhantomR Посмотреть сообщение
Что вы имеете ввиду? Заменить на Recycler View?
Не обязательно менять на Recycler View, надо просто нормально реализовать адаптер.
1
PhantomR
5 / 5 / 0
Регистрация: 04.02.2016
Сообщений: 74
17.08.2016, 09:11  [ТС] #5
Я так понимаю просто убрать это условие будет недостаточно?
0
androbro
326 / 286 / 60
Регистрация: 17.10.2014
Сообщений: 843
17.08.2016, 09:12 #6
Цитата Сообщение от PhantomR Посмотреть сообщение
Я так понимаю просто убрать это условие будет недостаточно?
если вы уберете данное условие, то получите очень не эффективный и прожорливый ListView
0
PhantomR
5 / 5 / 0
Регистрация: 04.02.2016
Сообщений: 74
17.08.2016, 09:13  [ТС] #7
Пойду поднимать учебники по адаптерам.
0
androbro
326 / 286 / 60
Регистрация: 17.10.2014
Сообщений: 843
17.08.2016, 09:13 #8
Примените паттерн ViewHolder к своему адаптеру.
1
PhantomR
5 / 5 / 0
Регистрация: 04.02.2016
Сообщений: 74
17.08.2016, 09:14  [ТС] #9
Понял. Спасибо за направление!
0
androbro
326 / 286 / 60
Регистрация: 17.10.2014
Сообщений: 843
17.08.2016, 09:16 #10
PhantomR, вот довольно простой пример, там ничего сложного
http://androiddocs.ru/pattern-viewho...iska-listview/
2
PhantomR
5 / 5 / 0
Регистрация: 04.02.2016
Сообщений: 74
18.08.2016, 08:16  [ТС] #11
Делал подобное, пошёл разбираться. Ещё раз огромное спасибо!

Добавлено через 22 часа 55 минут
Ещё раз спасибо большое. Всё получилось. Применил этот паттерн, стало ещё быстрее!

Осталось переделать всё на архитектуру MVP. Но это я так понимаю не совсем junior уровень? (ибо на 3х курсах об этом ни слова).

P.S. Делал простой вариант, т.к. раньше понятия не было как Парсить RSS данные)
0
androbro
326 / 286 / 60
Регистрация: 17.10.2014
Сообщений: 843
18.08.2016, 09:10 #12
Цитата Сообщение от PhantomR Посмотреть сообщение
Ещё раз спасибо большое. Всё получилось.
Да не за что.
Цитата Сообщение от PhantomR Посмотреть сообщение
Осталось переделать всё на архитектуру MVP. Но это я так понимаю не совсем junior уровень?
имхо: для одной небольшой задачи хватит знаний и джуна, а вот для для построения мало-мальски серьезного приложения придется попотеть, т.к. нет универсального рецепта построения приложения с этой архитектурой, каждый как понимает MVP так ее(архитектуру) и готовит
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.08.2016, 09:10
Привет! Вот еще темы с ответами:

ListView. После добавления кнопки перестал быть доступен сам ListView - Программирование Android
Кастомизировал ListView с помощью нескольких TextView. Но после того, как добавил ImageButton сам список стал недоступен для клика, а...

Listview вывод данных и переход по нажатию на другой Listview SQLite - Программирование Android
Доброго извините за название темы, долго не мог сформировать название, В общем у меня беда с пытаюсь написать программу где первый экран...

Данные из SQlite в ListView, обработка события ListView - Программирование Android
Ребят, есть БД, ListView. Надо при нажатии на строчку ListView вытащить данные int из БД. mList.setOnItemClickListener(new...

RSS 2.0 Reader на Delphi - Delphi
Други, помогите начинающему программисту. Планирую написать RSS 2.0 Reader на Delphi. Подскажите что почитать по этой теме или поделитесь...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
18.08.2016, 09:10
Ответ Создать тему
Опции темы

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