use*_*048 2 java android store sharedpreferences
我是Android的新手,我不知道如何使用sharedpreferences来检索存储的值,我找不到任何关于使用这些值在其他活动上编写的示例.如果有人可以帮助我,我会非常感激
这就是我存储数据的方式:
protected void onResume() {
super.onResume();
SharedPreferences prefs = getPreferences(0);
String restoredText1 = prefs.getString("cpw", "30");
if (restoredText1 != null) {
savedcostperworker.setText(restoredText1, TextView.BufferType.EDITABLE);
int selectionStart = prefs.getInt("selection-start", -1);
int selectionEnd = prefs.getInt("selection-end", -1);
if (selectionStart != -1 && selectionEnd != -1) {
savedcostperworker.setSelection(selectionStart, selectionEnd);
}
}
}
protected void onPause() {
super.onPause();
SharedPreferences.Editor editor = getPreferences(0).edit();
editor.putString("cpw", savedcostperworker.getText().toString());
editor.putInt("selection-start", savedcostperworker.getSelectionStart());
editor.putInt("selection-end", savedcostperworker.getSelectionEnd());
}
private EditText savedcostperworker;
Run Code Online (Sandbox Code Playgroud)
现在我想在另一个活动的TextView中显示值"cpw",但我不知道如何
您忘记致电commit()保存您的编辑器更改:
SharedPreferences.Editor editor = getPreferences(0).edit();
...
editor.commit();
Run Code Online (Sandbox Code Playgroud)
现在我想在另一个活动的TextView中显示值"cpw",但我不知道如何
只需getSharedPreferences()使用第一个Activity的名称调用并像以前一样使用它:
SharedPreferences prefs = getSharedPreferences("MainActivity", 0);
String string = prefs.getString("cpw", "String not found");
Log.v("SharedPrefs", string);
Run Code Online (Sandbox Code Playgroud)
您不能getPreferences()在第二个Activity中使用,因为它将getSharedPreferences()使用错误的文件名调用.有关getPreferences()更多信息,请参阅文档
| 归档时间: |
|
| 查看次数: |
145 次 |
| 最近记录: |