我在打开应用程序时生成一个随机数,然后使用Sharedpreferences保存此数字。这是我的代码:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Random r = new Random();
int number = r.nextInt(100);
SharedPreferences randomnumber = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
SharedPreferences.Editor editor = randomnumber.edit();
editor.putInt("intValue",number);
editor.commit();
}
}
打开应用程序时,我可以收集旧号码和新号码吗?
答案 0 :(得分:2)
您使用此
覆盖旧值并使用新值editor.putInt("intValue",number);
这就是为什么你总会看到一个值的原因。您可以使用不同的字段名称,也可以使用数组,例如How can I store an integer array in SharedPreferences?
答案 1 :(得分:1)
在设置新值之前获取旧值..
Random r = new Random();
int number = r.nextInt(100);
SharedPreferences randomnumber = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
String old = randomnumber.getString('intValue'); // old value
SharedPreferences.Editor editor = randomnumber.edit();
editor.putInt("intValue",number); // set new value
editor.apply();