kaydetmez. Ben de onStop()
üzerinde denemeye çalıştım ve aynı sonucu aldım. Burada bu konuyla ilgili başka konular gördüm, fakat hiçbiri benim yaptığım gibi aynı sorunu çözmedi.SharedPreferences Bu kodu vardır değerini
Herhangi bir fikrin var mı?
kaydetmez. Ben de onStop()
üzerinde denemeye çalıştım ve aynı sonucu aldım. Burada bu konuyla ilgili başka konular gördüm, fakat hiçbiri benim yaptığım gibi aynı sorunu çözmedi.SharedPreferences Bu kodu vardır değerini
Herhangi bir fikrin var mı?
Sen bunu yapamaz:
settings.edit().putBoolean("registered", true);
settings.edit().commit();
.değişiklik yapmak, editör nesneyi almak gerekir:
Editor editor = settings.edit();
editor.putBoolean(...);
editor.commit();
SharedPreferences prefs = PreferenceManager
.getDefaultSharedPreferences(LoginActivity.this);
Editor edit = prefs.edit();
edit.putBoolean("registered", true);
edit.commit();
kullanımını bu
diğer cevaplar ayrıca doğrudur.
Ayrıca bu
settings.edit().putBoolean("registered", true).commit();
Bu işe yaramıyor. Cjk'nin cevabını görün, nedenini çok iyi açıklıyor! –
Çok teşekkürler kullanabilirsiniz. Bu SharedPreferences.Editor olduğunu. İşe yaradı. Ama nedenini açıklayabilir misin? Belki de yöntemleri aradığım zaman farklı "nesneler" olarak adlandırdığı için? –
Evet, '.edit()' yi her aradığınızda Editör nesnesini sıfırlar, dolayısıyla bunun için '.commit() 'olarak adlandırdığınızda, içine koyduğunuz booleanı temizler. – cjk
Bununla birlikte, "settings.edit(). PutBoolean (" kayıtlı ", true) .commit();' (hatırlayabildiğim kadarıyla) –