2016-03-15 7 views
0

Я новичок в этом, и у меня возникла проблема, из-за которой я не могу найти решение для этого, поэтому я пришел сюда, чтобы попросить ваша помощь.Android Studio - TextView Не обновляется после внесения изменений в базу данных

То, что я пытаюсь сделать:

  1. Регистрация нового пользователя в базе данных
  2. Проверьте, работает ли он.
  3. Сменить пользователя или пройти
  4. Отобразить измененное имя пользователя в приложении.

К сожалению, шаг 4 не работает. Предположим, что я регистрирую пользователя и пароль 123, 123. Я проверяю их, чтобы убедиться, что он работает (вход из приложения), выход из приложения, переход к таблицам базы данных, редактирование пользователя до 321 возврат в приложение. Вход с пользователем 321 и пароль 123. В MainActivity дисплей будет таким же, как и первый, user/pass 123 вместо пользователя 321 и пройдет 123.

Вот часть, которая обрабатывает пользователя/пароль из класса MainActivity

txtName = (TextView) findViewById(R.id.name); //name 
    txtEmail = (TextView) findViewById(R.id.email); 
    btnLogout = (Button) findViewById(R.id.btnLogout); 
    // setting toolbar 
    Toolbar toolBar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolBar); 


    session = new SessionManager(getApplicationContext()); 

    if (!session.isLoggedIn()) { 
     logoutUser(); 
    } 

    String name = AppController.getString(getApplicationContext(), "name"); //name 
    String email = AppController.getString(getApplicationContext(), "email"); 
    txtName.setText(name); //name 
    txtEmail.setText(email); 

проблема я столкнулся в том, что имя пользователя не обновляется после изменения были внесены в базу данных

ответ

1

Попробуйте поставить этот код в методе onResume из MainActivity. Метод onCreate не всегда вызывается, когда вы возвращаетесь к своей деятельности.

+0

Это не помогло мне, добавив код в метод onResume, просто возобновив mainactivity после запуска приложения. Имя пользователя, которое должно отображаться в MainActivity, по-прежнему остается старым (не таким, как оно сейчас находится в базе данных). – helloworld99979

+0

EDIT: Может быть, это поможет вам понять мою проблему немного лучше. [link] (http://i.imgur.com/Aoi4EWq.png) – helloworld99979

+0

Я полагаю, что AppControler.getString() извлекает имя из SharedPreferences, а не из вашей базы данных. Вы обновляете это значение? – herveRilos

Смежные вопросы