У меня проблема с SharedPreferences, есть AlertDialog с 3 размерами текста по умолчанию. Когда я нажимаю на один из трех размеров, текст в TextView аккуратно увеличивается или уменьшается, но мне нужно сохранить выбранный размер в SharedPreferences даже после того, как я покину приложение и вернусь в приложение снова. Можете ли вы помочь мне, где я не прав в моем коде? Спасибо.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button =(Button)findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
CreateAlertDialogWhitRadioGroupButton();
}
});
}
public void CreateAlertDialogWhitRadioGroupButton() {
Context context;
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("Title text");
textView = (TextView)findViewById(R.id.textView1);
builder.setSingleChoiceItems(values, -1, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int item) {
SavePreferences("SIZE", textView.toString());
LoadPreferences();
switch (item) {
case 0:
textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 20);
break;
case 1:
textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 30);
break;
case 2:
textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 40);
break;
}
alertDialogTextSize.dismiss();
}
});
alertDialogTextSize = builder.create();
alertDialogTextSize.show();
}
// SharedPreferences
private void SavePreferences(String key, String value){
SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString(key, value);
editor.apply();
}
private void LoadPreferences()
{
SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);
String textsize = sharedPreferences.getString("SIZE", "");
textView.setTextSize(Float.parseFloat(textsize));
}
введите описание изображения здесь