如何在游戏中显示最高分数

问题描述

| 我正在创建一个名为“单词混乱”的游戏,其中向用户提供了一个加扰格式的单词,用户必须对该单词进行加扰。对于每个正确答案,分数将增加10,并为用户显示当前分数。用户退出应用程序后,当前分数应存储在某个位置,例如文件数据库(假设游戏是第一次玩),并将其显示为最高分数。假设第一次玩游戏并且分数是100,并且该值存储在文件/ DB中,第二次是当用户玩游戏并且分数是200。通过假设200是与文件数据库中的最高分数,即100,则必须将值100替换为200,并将200显示为最高分数。每当用户想要查看最高分数时,它都应检索最高分数并将其显示在视图中。 我需要我的乡亲以下建议: 我必须使用哪种类型的数据存储系统?文件数据库属性文件。哪个更好。 我应该采用什么逻辑来显示最高分? 我必须为文件数据库属性使用Android的哪些API?     

解决方法

        我会推荐SharedPreferences类和api。它很简单,只需要最少的代码,非常适合在键值对中存储少量数据。 此页中对此进行了说明(以及其他数据存储方法): http://developer.android.com/guide/topics/data/data-storage.html#pref 这是一些示例代码,经过修改后看起来像您如何使用它:
//Some strings to address your preferences
public static final String PREFS_NAME = \"JumbleWordsPreferences\";
public static final String HIGH_SCORE = \"HighScore\";

//Retrieving high score
SharedPreferences settings = getSharedPreferences(PREFS_NAME,0);
int highscore = settings.getInteger(HIGH_SCORE,0);

//Saving current score as high score
SharedPreferences settings = getSharedPreferences(PREFS_NAME,0);
SharedPreferences.Editor editor = settings.edit();
editor.putInteger(HIGH_SCORE,currentScore);
// Commit the edits!
editor.commit();
    

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...