我试图让用户选择日期。然后将此日期保存到共享预防,并用作下一个活动的倒数计时器的倒计时日期。我能够保存"名称"事件但不是日期,返回的值只是默认值。
存储日期:
rails webpacker:install
检索日期:
SharedPreferences sharedPreferences = getPreferences(MODE_APPEND);
SharedPreferences.Editor editor = sharedPreferences.edit();
DatePicker datePicker = (DatePicker) findViewById(R.id.datePicker1);
int day = datePicker.getDayOfMonth();
int month = datePicker.getMonth() + 1;
int year = datePicker.getYear();
editor.putString("day", String.valueOf(day));
editor.putInt("month", month);
editor.putInt("day", year);
editor.commit();
我不确定这是否重要,但这两者是分开的。 谢谢
共享偏好设置:
SharedPreferences prefs = this.getSharedPreferences(
"com.example.app", Context.MODE_PRIVATE);
SharedPreferences sharedPreferences = getPreferences(MODE_APPEND);
SharedPreferences.Editor editor = sharedPreferences.edit();
String dayEvent = prefs.getInt("day",0);
int monthEvent = prefs.getInt("month",0);
int yearEvent = prefs.getInt("year",0);
String eventString = (dayEvent + "-" + monthEvent+ "-" + yearEvent);
TextView testDate= (TextView) findViewById(R.id.testDate);
testDate.setText(eventString);
return eventString;
答案 0 :(得分:0)
保存首选项时,您应该传递一个名称:
SharedPreferences prefs = getSharedPreferences("PREF_NAME", Context.MODE_PRIVATE);
// open editor and commit() or apply()
然后,要检索数据,您将获得完全相同的共享偏好。
您还可以使用您所有活动通用的getDefaultSharedPreferences
:
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
编辑:
SharedPreferences prefs = getSharedPreferences("DATE_AND_STUFF", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putString("key", "value");
editor.apply();
SharedPreferences prefs = getSharedPreferences("DATE_AND_STUFF", Context.MODE_PRIVATE);
String value = prefs.getString("key", "defaultValue");
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(FirstActivity.this);
SharedPreferences.Editor editor = prefs.edit();
editor.putString("key", "value");
editor.apply();
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(SecondActivity.this);
String value = prefs.getString("key", "defaultValue");
希望它会有所帮助!