我想在第一个条目中生成数字并随时保存和使用。我使用了SharedPreference
当应用程序启动一次(第一次输入)时,代码生成一个数字。但如果不是第一次输入,则Random number
没有保存。
如何在第一个条目中生成数字并使用它?
CODE:
int i;
TextView tv;
public void onCreate(){
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
if(!prefs.getBoolean("firstTime", false)) {
Random r=new Random();
int i=r.nextInt(100);
SharedPreferences.Editor editor = prefs.edit();
editor.putBoolean("firstTime", true);
editor.commit();
}
tv.setText(i+"");//if "first run" set a number if not set "0"
}
答案 0 :(得分:3)
在致电SharedPreferences
之前,使用SharedPreferences.contains检查prefs.getBoolean
中是否已存在密钥。如果没有,那么第一次存储它,如果存在,则从SharedPreferences获取值:
if(prefs.contains("firstTime")){
// generate random number first time
// first time store random number
}else{
// already present get value from SharedPreferences
}
答案 1 :(得分:1)
public void onCreate(){
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
if(!prefs.getBoolean("firstTime", false)) {
Random r=new Random();
i=r.nextInt(100);//<-------- don't re declare I
SharedPreferences.Editor editor = prefs.edit();
editor.putBoolean("firstTime", true);
editor.commit();
}
tv.setText(i+"");//if "first run" set a number if not set "0"
}