2016-03-31 21 views
-1

Uygulamamda oturumları kullanmam gerekiyor, ben SessionManager adında bir java sınıfı oluşturdum ve burada oturumları başlattım ancak üç farklı işlevini oluşturduğumda işlevlerini aldım ve bunları kullanıyorum, oturumların değerleri üzerine yazıldı .. .Bir SharedPreferences'dan veri nasıl alınır?

public String getBname() { 
    return pref.getString(BREAKFAST_NAME,null); 
} 

public String getBcalories() { 
    return pref.getString(BREAKFAST_CALORIES,null); 
} 

public String getBquantity() { 
    return pref.getString(BREAKFAST_QUANTITY,null); 
} 

ve bu şekilde onları çağırır:

Benim işlevlerle

olan

String name=sessionDay.getBname(); 
String calories=sessionDay.getBcalories(); 
String quantity=sessionDay.getBquantity(); 
etFBreakFast.setText("Name: " + name + "\n" + "Calories: " + calories + "\n" + "Quantity: " + quantity); 

Yani problem nedir?

+0

Bunun için Paylaşılan Tercihler bölümünü okumalısınız: http://developer.android.com/guide/topics/data/data-storage.html –

cevap

1

Kaydetmek, indirmek veya silmek için SharedPreferences kullanabilirsiniz. Aşağıdaki kodu kontrol edin.

SharedPreferences prefs = null; 
public static void storeToPrefs(Context context, String key, String value) { 
    prefs = PreferenceManager.getDefaultSharedPreferences(context); 
    final SharedPreferences.Editor editor = prefs.edit(); 
    editor.putString(key,value); 
    editor.commit(); 
} 


public static String retrieveFromPrefs(Context context, String key, String defaultValue) { 
    prefs = PreferenceManager.getDefaultSharedPreferences(context); 
    try { 
     return prefs.getString(key, defaultValue); 
    } catch (Exception e) { 
     e.printStackTrace(); 
     return defaultValue; 
    } 
} 

public static void deleteAllPrefs(Context context){ 
    prefs = PreferenceManager.getDefaultSharedPreferences(context); 
    prefs.edit().clear().commit(); 
} 
İlgili konular