将文本设置为保存的首选项

setText to a saved preference

我已将高分保存到共享首选项,我想在主菜单上显示高分,即使您关闭并重新打开应用程序,它也会保留在那里。

我已经让它工作了,所以当你点击加载高分时它会将 textview 更改为高分,但我希望它自动执行。

//saving the highscore
public static final String PREFS_NAME = "MyPrefsFile";
    static SharedPreferences settings;
    static SharedPreferences.Editor editor;

// When 'back' button is pressed save the highscore to settings

            editor = settings.edit();// Create a new editor
            editor.putInt("highscore", HighScore); // Storing integer       
            editor.commit();

// When 'Show' button is pressed
    public void showPreferences(View v) {
        int highscore = GameActivity.settings.getInt("highscore", 0);
        Toast.makeText( MainMenu.this,
                    "Your Highscore is: " + highscore,
                Toast.LENGTH_LONG).show();
        tvScore.setText(Integer.toString(highscore));

    }


//current on create

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.game_start);
        tvScore= (TextView) findViewById(R.id.tvGuessGame);


    }

onCreate() 中,定义 TextView 后,使用从 SharedPreferences 获得的值设置文本。

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.game_start);
    tvScore= (TextView) findViewById(R.id.tvGuessGame);
    SharedPreferences settings = getSharedPreferences(....); //
    int highscore = settings.getInt("highscore", 0);
    tvScore.setText(""+highscore);
}