Я делаю простую игру памяти в студии Android. Игра содержит 2 действия (MainActivity, GameActivity). Мне нужно сохранить высокий балл от GameActivity и показать его в MainActivity. Я уже пытался использовать SharedPreferences, но высокий балл остается 0 в MainActivity. Вот код, я имею в GameActivity:Как сохранить высокий балл в Android-игре
SharedPreferences prefs;
SharedPreferences.Editor editor;
String dataName = "MyData";
String intName = "MyInt";
int defaultInt = 0;
int hiScore;
prefs = getSharedPreferences(dataName,MODE_PRIVATE);
editor = prefs.edit();
hiScore = prefs.getInt(intName, defaultInt);
editor.putInt(intName, hiScore);
editor.commit();
код в MainActivity:
SharedPreferences prefs;
String dataName = "MyData";
String intName = "MyString";
int defaultInt = 0;
public static int hiScore;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
prefs = getSharedPreferences(dataName,MODE_PRIVATE);
hiScore = prefs.getInt(intName, defaultInt);
TextView textHiScore =(TextView) findViewById(R.id.textHiScore);
textHiScore.setText("Hi: "+ hiScore);
}
Рассмотрите возможность использования постоянных постоянных констант String для сохранения ваших ключей во всех действиях. –
Спасибо, я запомню это. – Simo