我目前正在按照Android游戏编程傻瓜书中的Whack A Mole游戏的说明制作应用程序,但我想知道如何在xml或共享首选项或其他任何内容中存储高分,因此数据不是& #39;应用程序关闭时丢失。我已经确定当有新的高分时,有一个高分值正在更新,我只需要存储它!
答案 0 :(得分:0)
听起来你现在应该只使用共享偏好。我建议你在interface
后面做。这样,您现在可以提供简单的SharedPreferences
实现。然后在必要时更换。
这样的事情(假设你想要名字,如果你不想要更简单的话):
public class Score {
private String name;
private int score;
//getters/setters omitted
}
public interface ScoreBoard {
void placeScore(Score score);
List<Score> readTopScores(int count);
}
然后,您可以提供与sql存储甚至是外部评分服务(例如heyzap)对话的实现。或者,如果用户选择退出,并且暂时将其存储在本地:
ScoreBoard scoreBoard = userWantsToUseHeyzap
? new HeyZapScoreBoard()
: new SharedPreferencesScoreBoard(prefs);