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

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

Войти
Регистрация
Восстановить пароль
 
Alex_Fedor
30 / 30 / 4
Регистрация: 20.01.2015
Сообщений: 219
#1

Как "перезагрузить" базу данных и Cursor? - Программирование Android

21.03.2015, 13:27. Просмотров 228. Ответов 0
Метки нет (Все метки)

Вот к примеру такой кусок кода. Из базы данных удаляется строчка. Как сделать перезагрузку базы и курсора.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
case R.id.btnDellRec:
            int idColumn=cur.getColumnIndex("_id");
            int idRecordforDell=cur.getInt(idColumn);//вытаскиваем ID записи которую удаляем
            int posCur=cur.getPosition();//запоминаем позицию курсора
            //удаляем выбранную запись
            db.delete("dictonary", "_id=?",  new String[] { String.valueOf(idRecordforDell)});
            //закрываем базу
            cur.close();
            db.close();
            dictDB.close();
            //все заново открываем
            dictDB=new DictonaryDB(this);
            db = dictDB.getWritableDatabase();
            cur=db.query("dictonary", null, null, null, null, null, null);
            if(!cur.moveToPosition(posCur) ){ //ставим позицию курсора если такой нет то на первую позицию
                cur.moveToFirst();
            }
            //отправляем обратно позицию курсора в родительское активити
            intent.putExtra("curPosition", cur.getPosition());
            setResult(RESULT_OK, intent);
            onCloseDB();
            finish();
            break;
Пока делаю так. Сам вижу, что коряво. Пока все как то через сидалище, сперва все закрывается, потом все открывается, чтобы не нарваться на несуществующую позицию курсора. Есть какой нить способ поэлегантнее?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.03.2015, 13:27     Как "перезагрузить" базу данных и Cursor?
Посмотрите здесь:

Как "превратить" string "6.971245e-001" во float? - Программирование Android
Число конечно пример

Ошибка "Unknown method "e" of "org.apache.commons.logging.Log" - Программирование Android
Unknown method 'e' of 'org.apache.commons.logging.Log' package com.mycompany.myapp; import android.widget.*; import...

Получение данных из cursor - Программирование Android
У меня огромный вопрос по работе с SQLite, а именно Cursor. В общем то при запросе к бд все норм, при создании класса бд все норм, везде...

Визуализация нажатия на изображение. Как поставить картинку на "нажатие" - Программирование Android
У меня картинка выступает в качестве кнопки, на ней стоит изображение, как сделать что бы оно поменялось на другое при нажатии(как кнопка)....

Как заставить Eclipse "забыть" об ошибках в xml файлах? - Программирование Android
Проблема в следующем: открываю большой проект написанный не мной - все работает нормально, то есть запускается без ошибок. в процессе...

Как добавить строку "." в начале в ListView со своим обработчиком - Программирование Android
Я в своей базе данных, на каждый новый каталог, дополнительно добавляю запись со строкой "..", чтобы можно было переходить в верхний...

Как сделать View "не прозрачным" для кликов - Программирование Android
В общем имею много слойный экран, на нижнем - карта, выше - элементы управления и всякие доп поля. Сейчас есть табличка которая...

Как реализовать функцию "share via" в моем случае? - Программирование Android
Учил программирование для андроида, решил потренироваться написав свою программу, но процес зашел слишком далеко, и встал вопрос об...

Как преобразовать время из long в формат "ДД.ММ.ГГГГ"? - Программирование Android
Добрый день. Заранее извиняюсь, если тема глупая, ибо новичок. Я сохраняю дату в SQLite в формате long: private long...

Как вызвать из программы системное окно "Точка доступа WLAN"? - Программирование Android
Подскажите пожалуйста как вызвать из программы системное окно "Точка доступа WLAN"? Есть программа "Switch Network", которая вызывает окно...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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