我是android新手。我想为我的比赛保存5个高分。我正在使用SharedPreferences 为了那个原因。如何在SharedPreferences中保存多个分数?我可以假设每次完成关卡时都必须进行检查。但是我如何填充5个高分?
答案 0 :(得分:1)
假设你只想存储分数(没有名字)。将所有分数放在一个数组中。然后使用
Arrays.sort (myIntArray);
将其按升序排序,因此您需要将其反转。
这意味着在您的SharedPreferences编写操作中,从4开始然后向后工作..
sharedPreferences.putInt( "HighScore1", myIntArray [4] );
sharedPreferences.putInt( "HighScore2", myIntArray [3] );
等
为获得最佳效果,您将获得排序的“默认”值,例如-1
,表示不存在的分数。这样,当您显示到屏幕时,您可以检查-1
然后输出“无”或根本不输出任何内容。
答案 1 :(得分:0)
只需给每个人一个唯一的密钥:
SharedPreferences.Editor spEdit = getDefaultSharedPreferences().edit();
spEdit.putInt( "FirstHighScore", firstHighScore );
spEdit.putInt( "SecondHighScore", secondHighScore );
// Etc.
spEdit.commit();