我遇到保存变量值的问题。
(机器人)
我有扩展View的活动,但我不知道在扩展View的活动中如何使用保存和读取txt文件,我尝试序列化和反序列化我从主活动调用的其他类。但没有跑。 它不允许我调用方法序列化和反序列化。
我需要从app中保存Higscore。如果我重新启动应用程序,我需要知道高分值。
public class Game extends View {
我需要把这个值赋予游戏类。但我不知道如何。
感谢您的任何想法。
保存
SharedPreferences sharedPref = getContext().getActivity().getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
int newHighScore;
editor.putInt(getContext().getString((R.string.saved_high_score), newHighScore);
editor.commit();
.getActivity()有一个红色。比较者不知道这种方法。
阅读
SharedPreferences sharedPref2 = getContext().getActivity().getPreferences(Context.MODE_PRIVATE);
int defaultValue = 0;
int highScore = sharedPref.getInt(getContext().getString((R.string.saved_high_score), defaultValue));
.getActivity()有一个红色。比较者也不知道这种方法 和 getContext()。getString((R.string.saved_high_score),defaultValue)是地下的 (SharedPreferencies中的getInt(string,int)不能适用于(String))
答案 0 :(得分:1)
那应该适合你:
保存价值:
SharedPreferences sharedPref =
getContext().getSharedPreferences("preferences",Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putInt("highscore", [here goes your highscore]);
editor.commit();
读取值:
getContext().getSharedPreferences("preferences",Context.MODE_PRIVATE);
int defaultValue = 0;
long highScore = sharedPref.getInt("highscore", defaultValue);