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

Добавление элементов в listview из БД - Android

Восстановить пароль Регистрация
 
Lina Efer
0 / 0 / 0
Регистрация: 06.04.2015
Сообщений: 5
19.04.2015, 01:08     Добавление элементов в listview из БД #1
Здравствуйте. У меня не выходит выбросить из списка одинаковые элементы. Я из БД вытаскиваю номера групп, которые соответственно повторяются. Затем, по логике, добавляю список. Сравнивая, есть ли такой элемент уже в списке или нет. Но, не работает =(
Вывожу в логи для проверки. Он сравнивает, находит, но не реагирует и добавляет все элементы.
Почему??

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
public class FragmentListGroups extends SherlockFragment {
 
 
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View View = inflater.inflate(R.layout.list_groups, container, false);
        ListView listView = (ListView) View.findViewById(R.id.list_groups);
        ArrayList<String> list = new ArrayList<String>();
 
        try {
            XmlPullParser parser = getResources().getXml(R.xml.spring_2015);
 
            while (parser.getEventType()!= XmlPullParser.END_DOCUMENT) {
                if (parser.getEventType() == XmlPullParser.START_TAG
                        && parser.getName().equals("study")) {
                    String test = parser.getAttributeValue(7);
                    String[] arr = test.split("\\;");
                    for (int i=0; i<arr.length; i++) {
                        int count = 0;
                        Log.e("FFFF","arr "+arr[i]);
                        for (int j=0; j<list.size(); j++) {
                            Log.e("FFFF","list " + list.get(j));
                            if (list.get(j).equals(arr[i])) {
                                count++;
                                break;
                            }
                        }
                        Log.e("FFFF","count "+count+ " "+ i);
                        if (count == 0)
                            list.add(arr[i] + "\n");
                    }
                }
                parser.next();
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.04.2015, 01:08     Добавление элементов в listview из БД
Посмотрите здесь:

Android ListView с изменяющимся количеством элементов
Добавление нескольких элементов в ListView Android
Добавление данных в ListView Android
Добавление пункта в ListView Android
Android Одинаковый хэш-код элементов ListView
Android Просмотр элементов в ListView
Свои идентификаторы для элементов ListView Android
Android Анимация в Listview (добавление/удаление)
Android Получение нажатых элементов listview
Вывод элементов ListView в строчку Android
Прорисовка элементов в ListView Android
Android Асинхронная загрузка элементов в listview

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
androidlover
3 / 3 / 0
Регистрация: 20.04.2015
Сообщений: 9
20.04.2015, 18:08     Добавление элементов в listview из БД #2
Lina Efer, может проблема в использование break - не во внутреннем цикле for надо, а во внешнем?
Mikalai
248 / 224 / 91
Регистрация: 11.01.2015
Сообщений: 643
20.04.2015, 22:13     Добавление элементов в listview из БД #3
Мне кажется двойной цикл не нужен
Java
1
2
3
4
for (String item: arr) {
            if(!list.contains(item))
                list.add(item + "\n");
        }
подправил ещё

Добавлено через 8 минут
+ "\n" - а это зачем добавлять? может убери
Yandex
Объявления
20.04.2015, 22:13     Добавление элементов в listview из БД
Ответ Создать тему
Опции темы

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