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

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

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

Не могу обновить список с БД - Программирование Android

18.01.2017, 18:16. Просмотров 198. Ответов 1

Всем здравствуйте я новичек так что не судите строго.
У меня вот такая вот проблема
Это мой код со списком
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
92
93
94
95
package ru.erma.lab01.lab02;
 
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.ContextMenu;
import android.view.LayoutInflater;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;
 
import java.util.ArrayList;
 
public class AdminActivity extends AppCompatActivity {
    ListView lv;
    MyAdapter adapter;
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_admin);
        lv= (ListView) findViewById(R.id.lv);
        registerForContextMenu(lv);
        adapter=new MyAdapter();
        adapter.notifyDataSetChanged();
        adapter.context= this;
        adapter.list=GlobalVar.users;
        lv.setAdapter(adapter);
 
    }
 
 
    @Override
    public boolean onContextItemSelected(MenuItem item) {
       if (item.getItemId()==R.id.dob)
       {
           Intent intent= new Intent(AdminActivity.this,RegActivity.class);
           startActivity(intent);
       }
        return super.onContextItemSelected(item);
    }
 
    @Override
    public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
        super.onCreateContextMenu(menu, v, menuInfo);
        MenuInflater inflater= getMenuInflater();
        inflater.inflate(R.menu.menu,menu);
    }
 
    class  MyAdapter extends BaseAdapter
    {
        ArrayList<User> list;
        Context context;
 
        @Override
        public int getCount() {
            return list.size();
        }
 
        @Override
        public User getItem(int position) {
            return list.get(position);
        }
 
        @Override
        public long getItemId(int position) {
            return list.get(position).getId();
        }
 
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            View con= convertView;
            if(con== null)
            {
                LayoutInflater inflater= (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                con= inflater.inflate(R.layout.list_item,parent,false);
 
            }
            TextView loginTxt= (TextView) con.findViewById(R.id.userloginTxt);
            TextView nameTxt= (TextView) con.findViewById(R.id.usernameTxt);
            TextView passwordTxt= (TextView) con.findViewById(R.id.userpasswordTxt);
            loginTxt.setText(list.get(position).getLogin());
            nameTxt.setText(list.get(position).getName());
            passwordTxt.setText(list.get(position).getPassword());
            return con;
        }
    }
 
}
Я не понял как надо обновлять список при добавлении новой строки в БД
Вот здесь у меня добавляеться строка
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
package ru.erma.lab01.lab02;
 
import android.content.ContentValues;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
 
import java.util.ArrayList;
 
public class RegActivity extends AppCompatActivity {
    ArrayList <User> userAdd=new ArrayList<User>();
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_reg);
        final EditText nameReg= (EditText) findViewById(R.id.editReg);
        final EditText passReg= (EditText) findViewById(R.id.editReg2);
        final EditText passReg2= (EditText) findViewById(R.id.editReg3);
        final EditText loginReg=(EditText) findViewById(R.id.editReg4);
        Button btnReg= (Button) findViewById(R.id.btmReg);
        Button btnReg2=(Button) findViewById(R.id.btmReg2);
        btnReg2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                finish();
            }
        });
        btnReg.setOnClickListener(new View.OnClickListener() {
 
            @Override
            public void onClick(View v) {
              User user= new User();
                user.setLogin(loginReg.getText().toString());
                user.setPassword(passReg.getText().toString());
                user.setName(nameReg.getText().toString());
                if (SaveData(user))
                {
                   finish();
                }
                else
                {
                    Toast.makeText(RegActivity.this,"Ошибка", Toast.LENGTH_LONG).show();
                }
                }
 
 
        });
    }
    boolean SaveData(User user)
    {
        DBHelper helper= new DBHelper(this);
        SQLiteDatabase db= helper.getWritableDatabase();
        ContentValues cv= new ContentValues();
        cv.put("login", user.getLogin());
        cv.put("password", user.getPassword());
        cv.put("name", user.getName());
        long rowId= db.insert("user",null,cv);
        if (rowId>0)
        {
            return true;
        }
        return false;
    }
 
 
 
}
Пожалуйста помогите
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.01.2017, 18:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не могу обновить список с БД (Программирование Android):

Обновить список БД после добавление новой записи? - Программирование Android
При добавление записи в таблицу она добавляется в ListView, а при нажатие на какую либо строку списка ID бд выводится в TextView . Проблема...

Как обновить список RecyclerView после добавления item? - Программирование Android
Как обновить список RecyclerView после добавления item? список RecyclerView в DialogFragment, из контактов добавляется номер который...

Не могу обновить RecyclerView после изменения item - Программирование Android
данные для списка берутся из Firebase, у DatabaseReference//Firebase, есть два метода: onChildAdd и onChildChanged, первый...

FireBase + RecyclerView| как обновить список, после удаления item из базы? - Программирование Android
Добрый всем день! есть метод который удаляет айтем (значения items берутся из FireBase): public void DelPos(View v){ ...

Не могу обновить os - Mac OS
Привет всем! У меня проблема - не могу обновить свою ось. Сейчас стоит 10.7.5 http://prntscr.com/91o1p6 Пытаюсь поставить с appstore...

Как обновить выпадающий список? - MS Access
значение то добавил в табличу к которой этот список подцеплен, а список не обновился :(

1
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,071
19.01.2017, 07:25 #2
У адаптера нужно вызвать метод notifyDataSetChanged(). В результате адаптер должен "перечитать" данные.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.01.2017, 07:25
Привет! Вот еще темы с ответами:

Поле список обновить по событию - MS Access
Есть форма вводим новую строку склад - 1 фио - 21, группа - 1, номенклатурный номер - 111-1111. После ввода должно обновиться поле список...

Как обновить список репозиториев? - Debian Linux
Прошу помочь!: Debian 7.2 wheezy, 32 бита, к сети подключен deb http://ftp.ru.debian.org/debian stable main contrib non-free ...

Не могу обновить антивирус ! - Удаление вирусов
Антивирус не может обновится + система начала ужасно тормозить. Anti-Maleware ничего не нашёл. Вот логи других програм. Заранее благодарен

Не могу обновить драйвер - Windows 7
Добрый день! Проблема такая: нужно обновить драйвер. Лезу в диспетчер устройств, тыкаю на девайс правой кнопкой, обновить...


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

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

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