Как сохранять значение после выхода?

374
02 апреля 2017, 02:48

Всем привет! У меня такой вопрос почему не сохраняется RatingBar так как я сделал оценку, но после выхода из приложения у меня снова оценка 1, а не 4, то есть не сохраняет!

Answer 1

Можно это реализовать так:

// Java 7
private final String KEY_RATING = "KEY_RATING";
private final String RATING_PREFS_FILE = "RATING_PREFS_FILE";
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    ...
    RatingBar ratingBar = (RatingBar) findViewById(R.id.myRatingBar);
    SharedPreferences prefs = getSharedPreferences(RATING_PREFS_FILE, Context.MODE_PRIVATE);
    ratingBar.setRating(prefs.getFloat(KEY_RATING, 0));
    ratingBar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() {
        @Override
        public void onRatingChanged(RatingBar ratingBar1, float rating, boolean fromUser) {
            prefs.edit().putFloat(KEY_RATING, rating).apply();
        }
    });
}
//Java 8
private final String KEY_RATING = "KEY_RATING";
private final String RATING_PREFS_FILE = "RATING_PREFS_FILE";
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    ...
    RatingBar ratingBar = (RatingBar) findViewById(R.id.myRatingBar);
    SharedPreferences prefs = getSharedPreferences(RATING_PREFS_FILE, Context.MODE_PRIVATE);
    ratingBar.setRating(prefs.getFloat(KEY_RATING, 0));
    ratingBar.setOnRatingBarChangeListener((ratingBar1, rating, fromUser) -> 
        prefs.edit().putFloat(KEY_RATING, rating).apply());
}

Также советую почитать про SharedPreferences вот тут.

READ ALSO
Не работает clear() WebDriver

Не работает clear() WebDriver

Не работает метод clear() из Selenium WebDriver в поисковике (если я правильно понял, пишет - Caused by: orgopenqa

434
Java OpenGL MouseListener для смены цвета полигона

Java OpenGL MouseListener для смены цвета полигона

Реализовываю прямоугольный полигон на OpenGLНикак не могу сделать смену цвета этого полигона по клику мыши

354
Создание backend

Создание backend

Здравствуйте

283