Форум программистов, компьютерный форум, киберфорум
Наши страницы

Чтение данных из бд в listview - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Список из Spinner http://www.cyberforum.ru/android-dev/thread1242278.html
Здравствуйте. Умею работать с Spinner, умею просто с ListView, но умею это делать по отдельность. Пробовал найти что то похожее, нашел только одну темутык, но там ничего хорошего не вычитал. Я хочу...
Программирование Android Как в эклипсе сделать меню? Открываю xml менюхи в лайауте, жму адд.И в окне которое после этого открываеться поля неактивны((( http://www.cyberforum.ru/android-dev/thread1242257.html
Загрузка изображений в TextView из HTML Программирование Android
Здравствуйте ) Достаточно частый вопрос. Но все усложняется тем, что это все находится в TextView. Имеется код: arrayList = new ArrayList<Object>(); arrayAdapter = new...
Подключение библиотеки к проекту в Intellij IDEA используя Gradle Программирование Android
Недавно нужно было сделать проект-тестовое задание. Проект должен был собираться с помощью Gradle, использовать сторонние библиотеки и обитать на GitHub. Одной из ошибок является неверное подключение...
Программирование Android Текстура OpenGL es 2 http://www.cyberforum.ru/android-dev/thread1242208.html
Доброго времени суток. Возникла такая проблема. Пишу 3D гоночки(eclipse+android sdk+openGL es 2) , тестирую на LG G-pad , samsung galaxy ace 1 через юсб вход и все работает нормально. Проблемма...
Программирование Android Не получается изменить значение переменной В классе активити объявлена переменная int a. В классе есть метод public boolean onTouch. В этом методе надо делать уменьшение или увеличение переменной int a, в зависимости от направления движения... подробнее

Показать сообщение отдельно
Lers
13 / 13 / 3
Регистрация: 27.05.2012
Сообщений: 203

Чтение данных из бд в listview - Программирование Android

13.08.2014, 23:23. Просмотров 1628. Ответов 7
Метки (Все метки)

Здесь listview с контекстным меню. В меню 2 пункта. По клику на пункт, запись из listview'a должна добавляться в определенную таблицу.
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
package info.androidhive.tabsswipe;
 
import java.util.ArrayList;
 
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
 
public class MoviesFragment extends Fragment {
    
ListView lw1;
ArrayAdapter <String> adapter;
ArrayList <String> label = new ArrayList <String>();
DataBase sqh;
SQLiteDatabase sqdb;
Cursor cursor;
ContentValues cv;
public static String s1 = new String();
public static final int IDM_A = 101;
public static final int IDM_B = 102;
@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        
        View rootView = inflater.inflate(R.layout.fragment_movies, container, false);
        lw1 = (ListView) rootView.findViewById(R.id.listrdy);
                
        sqh = new DataBase(getActivity().getApplicationContext());
        sqdb = sqh.getWritableDatabase();
        
            
            
            
            
        registerForContextMenu(lw1);
        
        return rootView;
    }
    
    @Override
    public void onCreateContextMenu(ContextMenu menu, View v,
            ContextMenuInfo menuInfo) {
        super.onCreateContextMenu(menu, v, menuInfo);
        menu.add(Menu.NONE, IDM_A, Menu.NONE, "WIN");
        menu.add(Menu.NONE, IDM_B, Menu.NONE, "LOSE");
    }
    
 
    public boolean onContextItemSelected(MenuItem item) {
        lw1.setOnItemClickListener(new OnItemClickListener() {
              public void onItemClick(AdapterView<?> parent, View view,
                  int position, long id) {
                  
                   s1 = lw1.getItemAtPosition(position).toString();    
        
              }
            });
        switch (item.getItemId()) {
        case IDM_A:
            Toast.makeText(getActivity(), "Добавлено в раздел Выполнено", Toast.LENGTH_LONG)
                    .show();
            cv = new ContentValues();
            cv.put(DataBase.WIN, s1);
              sqdb.insert(DataBase.TABLE_NAME3, DataBase.WIN, cv);
            
            return true;
            
        case IDM_B:
            Toast.makeText(getActivity(), "Добавлено в раздел провалено:(", Toast.LENGTH_LONG)
                    .show();
            ContentValues cv1 = new ContentValues();
            cv1.put(DataBase.LOSE, s1);
              sqdb.insert(DataBase.TABLE_NAME2, DataBase.LOSE, cv1);
            return true;
        }
        return super.onContextItemSelected(item);
    }

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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
package info.androidhive.tabsswipe;
 
import java.util.ArrayList;
 
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ListView;
 
public class TopRatedFragment extends Fragment {
    
    DataBase sqh;
    SQLiteDatabase sqdb;
    ListView lw2;
    ArrayAdapter <String> adapter;
    ArrayList <String> label = new ArrayList <String>();
    Cursor cursor;
    
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
 
        View rootView = inflater.inflate(R.layout.fragment_top_rated, container, false);
    
        lw2 = (ListView) rootView.findViewById(R.id.lw2);
        sqh = new DataBase(getActivity().getApplicationContext());
          sqdb = sqh.getWritableDatabase();
         
            
        return rootView;
    }
    
 
    @Override
    public void onResume(){
        super.onResume();
        sqh = new DataBase(getActivity().getApplicationContext());
        sqdb = sqh.getWritableDatabase();
         cursor = sqdb.query(DataBase.TABLE_NAME3, new String[] {
                DataBase._ID, DataBase.WIN }, null,null,null,null,null);
     
        while (cursor.moveToNext()) {
            int id = cursor.getInt(cursor.getColumnIndex(DataBase._ID));
            String name = cursor.getString(cursor.getColumnIndexOrThrow(DataBase.WIN));
            label.add(name);
        
        } 
        
        if (label != null) {adapter = new ArrayAdapter <String> (getActivity(),android.R.layout.simple_list_item_1,label);
        lw2.setAdapter(adapter);  } 
        //cursor.close();
    }
    @Override
    public void onStop() {
        super.onStop();
 
        sqdb.close();
        sqh.close();
    }
Соответственно, в этом фрагменте я считываю данных из таблицы и вывожу в listview. Проблема в том, что появляются пустые поля.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru