Soru & Cevap

Shared Preferences ile Kayıt Tutma (Çözdüm)

12.03.2016 - 01:11

Merhaba,

Bir oyun yapıyorum, oyunda her bir level bir activityden oluşuyor. Oyundaki levelları Shared Preferences ile tutuyorum. Tuttuğum kayıt uygulama çalıştığı sürece çalışıyor, yani kaldığı leveldan devam edebiliyor fakat uygulamayı kapatınca sıfırlanıyor ve oyun en baştaki levela dönüyor. Ben istiyorumki, uygulama kapatılıp tekrar açıldığında da aynı şekilde devam edebilisin.

İçerikten bahsedeyim;

preferences ve editor tanımladıktan sonra  editor.putInt("levelKayit", 1);  yapıp, bunu levelKayıt adında bir integera aktarıyorum.

Anasayfada play butonu içerisinde de

if(levelKayıt == 1){ Level1.class'a git} 

else if (levelKayıt == 2){ Level2.class'a git} ... şeklinde devam ediyor.

Her activityde bölüm geçilirse devam butonunu aktif edip bu buton içinde levelKayıt sayısını 1 artırıp devam ediyorum. Böylece hangi levelda kaldı ise oradan devam edebiliyor. Uygulama kapanıp açıldığında da devam edebilsin istiyorum. Yardımcı olabilirseniz sevinirim.

26 Görüntülenme

4 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

Profile picture for user
Konuk (doğrulanmamış)
11.05.2020 - 02:51

Nasıl yaptığını kodlarla açılayabilir misin ? 

picture-62423-1460561213.jpg
emre.tsbs
13.03.2016 - 02:06

Çözdüm arkadaşlar,

Her levelda bir adet boolean değeri kaydettim ve anasayfada bu boolean değerleri if sorgusuna alıp eğer true ise o leveli anasayfada kaydet şeklinde bir yaklaşımla yaptım ve şuan çalışıyor.

picture-11052-1576825910.jpg
alikarakoc
12.03.2016 - 10:45

Shared Preferences da atmışsın zaten gerekli kontrollerini yapmadığın için level başa dönüyordur.

Uygulamadan çıkınca Shared Preferences gitmez kalır kontrollerini iyi yap.

picture-30491-1565085904.jpg
serhatleventyavas
12.03.2016 - 06:30

Uygulama acılırken sharedpreferences cagırıp sorgulama yaptırıyor musun

Emre Taşbaş
13.03.2016 - 01:27
Evet zaten anasayfada o sorgulamayı yapmazsam yönlenmezki :) Sorunum kısaca şu; level bilgisini uygulama açıkken tutabiliyor fakat kapatıp tekrar açtığımda herşey sıfırlanıyor. Bunun için ekstra bir özelliğe gerek var mı onu bilmiyorum.