0

我是安卓新手。我想为我的游戏保存 5 个高分。我为此使用 SharedPreferences。如何在 SharedPreferences 中保存多个分数?我可以假设每次完成一个级别都必须进行检查。但是我怎样才能填充 5 个高分呢?

4

2 回答 2

1

假设您只想存储分数(无名称)。把你所有的分数放在一个数组中。然后使用

Arrays.sort (myIntArray);

这会将其按升序排序,因此您需要将其反转。

这意味着在您的 SharedPreferences 写入操作中,从 4 开始,然后向后工作..

sharedPreferences.putInt( "HighScore1", myIntArray [4] );
sharedPreferences.putInt( "HighScore2", myIntArray [3] );

等等

为了获得最佳结果,您将有一个“默认”排序值,例如-1不存在的分数。这样,当您显示到屏幕上时,您可以检查-1然后输出“无”或根本不输出任何内容。

于 2012-12-28T19:27:20.810 回答
0

只需给每个人一个唯一的密钥:

SharedPreferences.Editor spEdit = getDefaultSharedPreferences().edit();
spEdit.putInt( "FirstHighScore", firstHighScore );
spEdit.putInt( "SecondHighScore", secondHighScore );
// Etc.
spEdit.commit();
于 2012-12-28T19:16:28.737 回答