невозможно обновить значения с помощью общих настроек - PullRequest
0 голосов
/ 09 апреля 2020

Я не могу показать обновленные значения в тексте редактирования. У меня есть база данных на сервере. Я обновляю пользовательские значения, используя модернизацию. На сервере значения обновляются успешно, но при повторном посещении страницы профиля отображаются значения, заполненные общими настройками. При входе в систему я сохраняю значения в общих настройках и во всем приложении использую эти значения. Код для сохранения и получения значений приведен ниже:

Получение и установка адреса электронной почты в общих настройках

public void putEmail(String loginorout) {
        SharedPreferences.Editor edit = app_prefs.edit();
        edit.putString(EMAIL, loginorout);
        edit.apply();
    }

    public String getEmail() {
        return app_prefs.getString(EMAIL, "");
    }

Получение значений из общих настроек

accountETSU1.setText(preferenceHelper.getEmail());

1 Ответ

0 голосов
/ 09 апреля 2020

Более просто, если вы создаете объект с именем PreferenceHelper, в этом объекте вы создаете строку c для имени электронного письма, например:

final String emailUser = "emailUser";

С этой строкой вы создаете 2 функции, одну написать:

public void writeEmail(String : email, Context : context){
  SharedPreferences sharedPref = context.getPreferences(Context.MODE_PRIVATE);
  SharedPreferences.Editor editor = sharedPref.edit();
    editor.putString(emailUser, email);
    editor.commit();
}

Другой получить:

public String getEmail(Context : context){
    SharedPreferences sharedPref = context.getPreferences(Context.MODE_PRIVATE);
    String email = sharedPref.getString(emailUser, "");
    return email;
}

Затем вызвать объект в вашей деятельности

Context context = this@YourActivity;
accountETSU1.setText(PreferenceHelper.getEmail(context));
...