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

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

Войти
Регистрация
Восстановить пароль
 
_bio
0 / 0 / 0
Регистрация: 07.09.2011
Сообщений: 28
#1

Данные из SQlite в ListView, обработка события ListView - Программирование Android

20.02.2016, 16:09. Просмотров 293. Ответов 5
Метки нет (Все метки)

Ребят, есть БД, ListView. Надо при нажатии на строчку ListView вытащить данные int из БД.

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
 mList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                int num;
                userCursor = sqlHelper.database.rawQuery("select * from " + DatabaseHelper.TABLE + " where " +
                        DatabaseHelper.COLUMN_ID + "=?", new String[]{String.valueOf(id)});
 
                
userCursor.moveToPosition(position); 
num = userCursor.getInt(userCursor.getColumnIndex(DatabaseHelper.COLUMN_YEAR)); // В ЭТИХ СТРОКАХ БЕДА
 
 
                String baseUssd = Uri.encode("*") + "697" + Uri.encode("*") + num + Uri.encode("*") + "1"+ Uri.encode("#") ;
                StringBuilder builder = new StringBuilder();
                builder.append(baseUssd);
 
                Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + builder.toString()));
                if (ActivityCompat.checkSelfPermission(UssdMain1Activity.this, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
                    // TODO: Consider calling
                    return;
                }
                startActivity(intent);
 
             
            }
        });
При нажатии на первую строчку ListView запрос вроде бы прошел (на эмуляторе GenyMotion вылезла ошибка Connection problem or invalid MMI code, это кст вопрос №2 - Как проверить работоспособность USSD запросов???)

Но при нажатии на следующие строки вылетает ошибка android.database.CursorIndexOutOfBoundsException: Index 1 requested, with a size of 1.
Вероятно косяк вот в этих строках:
Java
1
2
userCursor.moveToPosition(position); 
num = userCursor.getInt(userCursor.getColumnIndex(DatabaseHelper.COLUMN_YEAR));
Подскажите как по правильному реализовать?)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.02.2016, 16:09     Данные из SQlite в ListView, обработка события ListView
Посмотрите здесь:

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

ListView + SQLite - Программирование Android
Привет. Взял код из урока 52 на startandroid, немного его изменил public class DB { private static final String DB_NAME =...

ListView и SQLite - Программирование Android
Пишу первую простенькую игру.Пожалуйста подскажите как решить такую задачу: 1.Есть listview, в котором через simpleCursorAdapter...

Идентификация ListView + SQLite - Программирование Android
Есть БД sqlite, в ней таблица с полем _id (автоинкримент). ListView заполняю так: fillData(); ContactAdapter = new...

Картинка из SQLite в ListView - Программирование Android
Здравствуйте.Есть несколько вопросов. 1 Как отобразить картинки в ListView из SQLite.Если картинки храняться в папке drawable? 2...

SQLite and ListView. Ввод и вывод данных - Программирование Android
Здравствуйте. Пишу программу(кто бы мог подумать). Есть подозрения, что данные в БД вбиваются не правильно или как раз выводятся...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
20.02.2016, 21:49     Данные из SQlite в ListView, обработка события ListView #2
userCursor и так содержит одну запись, удалите userCursor.moveToPosition(position);
_bio
0 / 0 / 0
Регистрация: 07.09.2011
Сообщений: 28
20.02.2016, 22:00  [ТС]     Данные из SQlite в ListView, обработка события ListView #3
Rube, Пробовал без записи, ошибка остается(
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
20.02.2016, 22:14     Данные из SQlite в ListView, обработка события ListView #4
Log нужен, особенно строка где указана строка ошибки. Оттуда и надо плясать.

Добавлено через 1 минуту
А также проверять на кол-во записей userCursor.
_bio
0 / 0 / 0
Регистрация: 07.09.2011
Сообщений: 28
25.02.2016, 14:07  [ТС]     Данные из SQlite в ListView, обработка события ListView #5
Все верно, лог показал, что в userCursor содержались три записи, трех столбцов.
Решение:
Java
1
2
3
if(userCursor.moveToFirst()){
                    num = userCursor.getInt(userCursor.getColumnIndex(DatabaseHelper.COLUMN_YEAR));
                }
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.02.2016, 17:48     Данные из SQlite в ListView, обработка события ListView
Еще ссылки по теме:

Android, ListView, база данных SQLite - Программирование Android
Как достать картинку из БД (SQLite) и поместить её в ListView??? помогите, пожалуйста :)

ListView ячейки, получить Id элемента из SQLite - Программирование Android
есть база данных SQLITE. некоторые элементы БД выводятся в ListView через адаптер и вспомогательный XML. моя задача - в onItemClick перейти...

События ListView - Программирование Android
Здравствуйте! Вот программа; package com.example.freedom; import java.util.ArrayList; import java.util.HashMap; import...

Обновление ListView при изменении значений в базе SQLite - Программирование Android
Доброго времени суток господа. У меня такой вопрос. Как лучше сделать обновление данных в ArrayList,а так же занесение данных в базу?? ...

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

Как найти id записи в SQlite таблице при клике на кнопку расположенную в Listview item? - Программирование Android
привет ! подскажите пожалуйста решение((( Кейс: у меня есть листвью , который выводит записи из локальной БД. На каждом айтеме...


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

Или воспользуйтесь поиском по форуму:
alexfoz
0 / 0 / 0
Регистрация: 25.02.2016
Сообщений: 1
25.02.2016, 17:48     Данные из SQlite в ListView, обработка события ListView #6
Thanks очень полезная фишка
Yandex
Объявления
25.02.2016, 17:48     Данные из SQlite в ListView, обработка события ListView
Ответ Создать тему
Опции темы

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