我有一個在主屏幕上顯示分數的應用程序,但每次啓動新遊戲時都將此設置爲零。我想要做的是存儲該分數,並且只有在下一個分數較高時纔會改變,因此它是最高分數。在Android應用程序中存儲高分
目前,使用finish()方法利用hitCount方法來顯示從遊戲活動到主要活動的分數。
終點()方法是如下:
public void finish(){
Intent returnIntent = new Intent();
returnIntent.putExtra("GAME_SCORE", gameView.getHitCount());
setResult(RESULT_OK, returnIntent);
super.finish();
}
在MainMenu的類,以下onActivityResult()方法被用來獲得得分,顯示在主屏幕上:
protected void onActivityResult(int requestCode, int resultCode, Intent retIntent) {
// Check which request we're responding to
if (requestCode == SCORE_REQUEST_CODE) {
// Make sure the request was successful
if (resultCode == RESULT_OK) {
if (retIntent.hasExtra("GAME_SCORE")) {
int scoreFromGame = retIntent.getExtras().getInt("GAME_SCORE");
tvScore.setText(Integer.toString(scoreFromGame));
//highScore.setText(Integer.toString(scoreFromGame));
}
}
}
}
現在,我知道我必須使用像共享喜好這樣的東西來存儲分數並在取得時用更高的數字取代它,但我無法弄清楚如何以及在哪裏。
一如既往,任何幫助非常感謝。
謝謝
的[如何使用SharedPreferences在Android的存儲,讀取和編輯值]可能的複製(http://stackoverflow.com/questions/3624280/how-to-use-sharedpreferences-in-android-to-store-讀取和編輯值) –
您可以訪問任何地方SharedPreferences你有一個Context(類似活動) –