Сохранение и извлечение значения счетчика с помощью общих настроек - PullRequest
0 голосов
/ 26 августа 2018

У меня есть счетчик.Я хочу сохранить его значение в saveFile() и получить его при вызове readFile(), используя sharedpreferences.У меня пока нет правильного способа сделать это.

    spinner = (Spinner) findViewById(R.id.spinner);
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
            R.array.countries_array, android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner.setAdapter(adapter);
    public void saveFile(){
            SharedPreferences sharedPref = getSharedPreferences(FileName,Context.MODE_PRIVATE);
            SharedPreferences.Editor editor=sharedPref.edit();
     }
    public void readFile(){
            SharedPreferences sharedPref = getSharedPreferences(FileName,Context.MODE_PRIVATE);
    }

Ответы [ 3 ]

0 голосов
/ 26 августа 2018

Попробуйте это

     public void saveFile(){
            SharedPreferences sharedPref = getSharedPreferences(FileName,Context.MODE_PRIVATE);
            SharedPreferences.Editor editor=sharedPref.edit();
            editor.putInt("spinnerValue",spinner.getSelectedItemPosition());
            editor.apply();
     }

     public void readFile(){
            SharedPreferences sharedPref = getSharedPreferences(FileName,Context.MODE_PRIVATE);
            int index = sharedPref.getInt("spinnerValue",0);
            spinner.setSelection(index);
     }
0 голосов
/ 26 августа 2018

Чтобы сохранить данные в Shared Preference, вы должны записать данные в Shared Preference.Для записи данных используйте:

SharedPreferences.Editor editor = sharedPref.edit();
editor.putInt(getString(R.string.saved_high_score_key), newHighScore);
editor.commit();

И для повторного чтения используйте это:

SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
int defaultValue = getResources().getInteger(R.integer.saved_high_score_default_key);
int highScore = sharedPref.getInt(getString(R.string.saved_high_score_key), defaultValue);

Проверьте Официальный Документ для более.

0 голосов
/ 26 августа 2018

Вы должны добавить

  editor.apply();

после установки значения предпочтения.

...