Android节省高分

时间:2013-08-20 10:29:22

标签: java android

我正在为Android开发一款游戏,我有一个我在互联网上找不到的问题。我想用共享首选项保存高分,这就是代码:

Play Class : 
        SharedPreferences prefs = this.getSharedPreferences("myPrefsKey", Context.MODE_PRIVATE);
        Editor edit = prefs.edit();
        edit.putInt("key", score);
        edit.commit();
        Toast.makeText(getApplicationContext(), "SAVED", Toast.LENGTH_LONG).show();

        Intent it = new Intent(getApplicationContext(),HighScore.class);
        startActivity(it);

这是高分列表代码:

highscore = (TextView) findViewById(R.id.highscore_int);
SharedPreferences prefs = this.getSharedPreferences("myPrefsKey", 
                                                    Context.MODE_PRIVATE);
int score = prefs.getInt("key", 0); //0 is the default value
highscore.setText(""+score);

这样可以正常工作,但即使它比以前更小,也可以保存所有分数。我想保留得分,只要它比以前更大。我怎样才能做到这一点? PS:对不起我的英文,我不知道如何突出代码:(

1 个答案:

答案 0 :(得分:8)

SharedPreferences prefs = this.getSharedPreferences("myPrefsKey", Context.MODE_PRIVATE);
int oldScore = prefs.getInt("key", 0);  
if(newScore > oldScore ){
   Editor edit = prefs.edit();
   edit.putInt("key", newScore);
   edit.commit();
}

看。