Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Timur_St
0 / 0 / 0
Регистрация: 13.05.2016
Сообщений: 17
#1

Загрузка данных из SQLite для каждого пункта ListView

13.05.2016, 08:28. Просмотров 893. Ответов 6
Метки нет (Все метки)

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

Добавлено через 1 час 27 минут
Вот мой код для второй активности, при нажатии на любой пункт списка отображается одна и та же строка(первая).
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
@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_information);
 
        
        mTextView = (TextView) findViewById(R.id.textView);
 
        mDataBaseHelper = new DataBaseHelper(getApplicationContext());
 
        db = mDataBaseHelper.getReadableDatabase();
        userCursor = db.query("Dish", new String[]{DataBaseHelper.DISH_NAME_RECIPE_COLUMN}, null, null, null, null, null);
 
        userCursor.moveToNext()
            recipe = userCursor.getString(userCursor.getColumnIndex(DataBaseHelper.DISH_NAME_RECIPE_COLUMN));
 
 
        Intent intent = getIntent();
        String resName = recipe + intent.getIntExtra("head", 0);
 
 
        mTextView.setText(resName);
        userCursor.close();
        db.close();
    }
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.05.2016, 08:28
Ответы с готовыми решениями:

Выпадающее меню для каждого пункта ListView
Здравствуйте! Как реализовать подобное меню в списке? Я придумал только с...

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

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

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

Загрузка базы данных из файла, в классе SQLite БД
Здравствуйте. Есть метод loadBDOfWordsToList(), который из текстового файла...

6
Alexvp
111 / 75 / 8
Регистрация: 03.08.2014
Сообщений: 390
13.05.2016, 09:43 #2
Java
1
2
3
4
5
do
{
тут формируете свои строки меню
...
}while (userCursor.moveToNext());
0
Timur_St
0 / 0 / 0
Регистрация: 13.05.2016
Сообщений: 17
13.05.2016, 11:06  [ТС] #3
Строки списка уже сформированы в первой активности, но когда нажимаешь на какой нибудь пункт списка(не важно на какой) открывается новая активность и там выводится последняя строчка БД, у меня не получается сделать так что бы для первого пункта списка открывалась активность с первой срокой БД (для второго пункта - вторая строка и т. д.)
0
Pablito
2711 / 2157 / 732
Регистрация: 12.05.2014
Сообщений: 7,522
Завершенные тесты: 1
13.05.2016, 14:45 #4
Цитата Сообщение от Timur_St Посмотреть сообщение
Вот мой код для второй активности, при нажатии на любой пункт списка отображается одна и та же строка(первая).
Цитата Сообщение от Timur_St Посмотреть сообщение
Строки списка уже сформированы в первой активности
наверное логичнее было бы показать код из первой активити, где эти данные вытягиваются, формируются и передаются
0
Timur_St
0 / 0 / 0
Регистрация: 13.05.2016
Сообщений: 17
14.05.2016, 19:39  [ТС] #5
данные вытягиваются из той же БД, вот код первой активити
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
35
36
37
38
39
40
41
42
43
44
public class MainActivity extends AppCompatActivity {
    ListView mListView;
    DataBaseHelper mDataBaseHelper;
    SQLiteDatabase db;
    Cursor userCursor;
    SimpleCursorAdapter userAdapter;
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        mListView = (ListView)findViewById(R.id.listView);
 
        mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> a, View v, int position, long id) { //position номер выбранного пункта
                Intent intent = new Intent(MainActivity.this, Information.class);
                intent.putExtra("head", position);
                startActivity(intent);
            }
        });
 
        mDataBaseHelper = new DataBaseHelper(getApplicationContext());
    }
 
    @Override
    protected void onResume() {
        super.onResume();
        db = mDataBaseHelper.getReadableDatabase();
        userCursor = db.rawQuery("select * from "+ DataBaseHelper.DATABASE_TABLE_NAME, null);
        String[] columns = new String[]{DataBaseHelper.DISH_NAME_COLUMN}; //список столбцов
        userAdapter = new SimpleCursorAdapter(this, android.R.layout.two_line_list_item, userCursor, columns,
                new int[]{android.R.id.text1},0);
        mListView.setAdapter(userAdapter);
    }
 
    @Override
    protected void onDestroy() {
        super.onDestroy();
        db.close();
        userCursor.close();
    }
0
Pablito
2711 / 2157 / 732
Регистрация: 12.05.2014
Сообщений: 7,522
Завершенные тесты: 1
15.05.2016, 11:34 #6
Лучший ответ Сообщение было отмечено Timur_St как решение

Решение

что происходит во второй активити?
userCursor.moveToNext()

наверное вместо этого надо сначала достать переданную позицию
Java
1
2
        int pos = intent.getIntExtra("head", 0);
        cursor.moveToPosition(pos);
1
Timur_St
0 / 0 / 0
Регистрация: 13.05.2016
Сообщений: 17
15.05.2016, 12:13  [ТС] #7
Паблито огромное вам спасибо, все получилось)
0
15.05.2016, 12:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.05.2016, 12:13

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

ListView, ToggleButton, SQLite, CursorAdapter. Как найти idItem в ListView, где была нажата ToggleButton?
Добрый день. Затрудняюсь понять один момент: У меня есть ListView,...

Добавление пункта в ListView
Всем привет,подскажите пожалуйста, есть два активити с Listview в одном...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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