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

Разбиение ListView - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Не сохраняются String ресурсы http://www.cyberforum.ru/android-dev/thread875050.html
Создаю xml файл с ресурсами. Записываю туда несколько String ресурсов. После сохранения они не сохраняются в R.java, и , соответственно, использовать их нельзя, потому что eclipse их не видит. Чем может быть вызвана такая проблема и как её решить?
Программирование Android Не изменяются компоненты в Eclipse Здравствуйте! Во время пользования средой Eclipse столкнулся с проблемами: 1) Компонент, такие как Button, TextView и др., не растягиваются и не изменяют свой размер. Вместо требуемого результата, они куда-то передвигаются, например, в другую часть окна. 2) Эти же и другие компоненты не хотят перемещаться по Activity-окну - они ужасно лагают! Хочу переместить Button вверх по центру, а... http://www.cyberforum.ru/android-dev/thread874782.html
Где в Фрагменте инициализировать доступ к базе? Программирование Android
Где в Фрагменте инициализировать доступ к базе? пробую так в Create: dbOpenHelper = new DBHelperSqLite(getActivity()); database = dbOpenHelper.getReadableDatabase(); а ошибка at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:98)
ArrayIndexOutOfBoundsException Программирование Android
Есть лог. Понимаю, что ошибка в строке 31, но там скобка. В чём ошибка? java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ex/com.ex.Activity}: java.lang.ArrayIndexOutOfBoundsException: length=5; index=-1 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2073) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2098) at...
Программирование Android Разпознавание чисел. З чего начать? http://www.cyberforum.ru/android-dev/thread874366.html
Надо реализовать программу для распознавания чисел на какие наведена камера. Подскажите з чего можно начать
Программирование Android Аналоговые часы с "заводом" стрелок касанием Всем привет! Захотелось для самообразования написать обычный будильник, но время сигнала которого задаётся следующим образом: На экране отображается аналоговый циферблат, и пользователь пальцем вращает стрелки для выставления нужного времени. Идея-то родилась, а вот куда копать - пока немного в непонятках..)) Был бы благодарен, если б меня немного направили - о чём стоит почитать, какие... подробнее

Показать сообщение отдельно
JIyrApy
32 / 32 / 1
Регистрация: 22.08.2010
Сообщений: 252

Разбиение ListView - Программирование Android

23.05.2013, 17:26. Просмотров 856. Ответов 4
Метки (Все метки)

Здравствуйте.
Есть ListView с записями. Каждая запись имеет свою дату. Хочу разделить этот список по датам. Ну например блок записей каждого дня ограничивать каким-нить цветным разделителем (то есть в приделах дня разделитель обычный, а на границах дней - красный). Проблема в следующем - как отследить эту границу дней?
Понятно, что через адаптер. Попробовал вот так:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
метод getView адаптера
...
MyCosts item=getItem(position);
Date createdDate=item.getCDate();
TextView thisday=(TextView)costsView.findViewById(R.id.thisday);  /*thisday является самым верхнем TextView в layout
 адаптера. Идея заключается в том, что если проскакивает граница дней, то в thisday записываем "Новый день", 
если не проскакивает, то сжимаем thisday до 1 пикселя) Может есть еще какой вариант решения подобной задачи?*/
        if(position==0){
            thisday.setText("Новый день"); // самая верхняя запись, логично, что по любому новый день
        }else{
            MyCosts previtem=getItem(position-1); // если не верхняя запись, то берем предыдущую запись
                Date prevdate=previtem.getCDate(); // и сравниваем ее день, месяц и год с такими же данными у текущей
            if(prevdate.getYear()==createdDate.getYear()&&prevdate.getMonth()==createdDate.getMonth()&&prevdate.getDay()==createdDate.getDay()){
                thisday.setText("");
                thisday.setHeight(1);
                
            }else{
                thisday.setText("Новый день"); // если не совпадает, то у текущей  запишем "Новый день"
            }
        }
...
Что получается. При выводе списка - все норм, но стоит добавить новую запись в список или удалить (в общем применить notifyDataSetChanged()) - все слетает, остается сплошной список (ну кроме первой записи, так как добавление идет в верхнюю строку и она имеет 0 позицию).
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru