为什么在应用程序重新启动时将值保存到SharedPreferences中?
问题描述:
我有一个叫cup的函数,我想知道为什么这段代码没有保存i
的值。为什么当我关闭应用程序时,它会返回i
到0
?为什么在应用程序重新启动时将值保存到SharedPreferences中?
public void cup(View view) {
SharedPreferences sharedPreferences = getSharedPreferences("Water", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
i=sharedPreferences.getInt("Cup", 0);
final int[] imageArray = {
R.drawable.waterdrop1, R.drawable.waterdrop2, R.drawable.waterdrop3,
R.drawable.waterdrop4, R.drawable.waterdrop5, R.drawable.waterdrop6,
R.drawable.waterdrop
};
imageView7.setImageResource(imageArray[i]);
i++;
if (i > 6) {
i = 6;
}
editor.putInt("Cup", i);
editor.commit();
}
明知杯的onclick功能
你的'i'输出是什么,预期的输出是什么? –
当我们点击图片时,我必须增加1,最大值是6 – Hend
我注意到'i'不是局部变量。还有什么其他的交互(修改)'我'?你是什么意思“...当我关闭应用程序时将'i'返回到'0'”?在应用程序重新启动后,我在第一次调用'cup()'时认为'i'是'0'? – toKrause