как сохранить данные через SharedPreferences, без нажатия на кнопку
Можно ли сохранять просто в onCreate или нужно обязательно привязывать к чему то? В приложении пользователь будет вводить данные в EditText и они должны там появится и после перезахода. Как правильно сохранять их и где правильно присваивать самому EditText значение
strEditText1 = editText1.getText().toString();
editor.putString("editText1", strEditText1);
editText1.setText(sharedPreferences.getString("editText1", ""));
Вызываю это при onCreate и оно не сохраняет, так же пробовал сохранять при onPause
Ответы (1 шт):
Автор решения: iramm
→ Ссылка
В onCreate()
считываем данные. В onPause()
записываем.
public class MainActivity extends AppCompatActivity {
private EditText editText1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editText1 = findViewById(R.id.editText1);
SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);
editText1.setText(sharedPreferences.getString("editText1", ""));
}
@Override
protected void onPause() {
super.onPause();
SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
String strEditText1 = editText1.getText().toString();
editor.putString("editText1", strEditText1);
editor.commit();
}
}