package cn.ycoder.android.library.tool.objectify;

import android.content.Context;
import android.content.SharedPreferences;
import android.preference.PreferenceManager;
import android.text.TextUtils;

/**
 * Created by tsung on 3/31/14.
 */
public class StringPreferenceLoader extends PreferenceLoader {
    public StringPreferenceLoader(Context context, String key) {
        super(context, key);
    }

    public String load() throws NoSuchPreferenceFoundException {
        SharedPreferences appSharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
        String value = appSharedPrefs.getString(getKey(), "");
        if (TextUtils.isEmpty(value)) {
            throw new NoSuchPreferenceFoundException();
        }
        return value;
    }

    public void save(String value) {
        SharedPreferences appSharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
        SharedPreferences.Editor prefsEditor = appSharedPrefs.edit();
        prefsEditor.putString(getKey(), value);
        prefsEditor.apply();
    }
}
@@ -166,39 +166,8 @@
 ger;
-%0Aimport android.text.TextUtils;
 %0A%0A/*
@@ -267,18 +267,17 @@
 oader %7B%0A
-  
+%0A
   public
@@ -327,28 +327,24 @@
 ring key) %7B%0A
-    
     super(co
@@ -356,27 +356,23 @@
 , key);%0A
-  
   %7D%0A%0A  
- 
- 
 public S
@@ -424,20 +424,16 @@
 ption %7B%0A
-    
     Shar
@@ -515,28 +515,24 @@
 s(context);%0A
-    
     String v
@@ -582,118 +582,8 @@
 %22);%0A
-        if (TextUtils.isEmpty(value)) %7B%0A            throw new NoSuchPreferenceFoundException();%0A        %7D%0A    
     
@@ -600,17 +600,13 @@
 ue;%0A
-  
   %7D%0A%0A
-  
   pu
@@ -636,20 +636,16 @@
 alue) %7B%0A
-    
     Shar
@@ -731,20 +731,16 @@
 ntext);%0A
-    
     Shar
@@ -797,28 +797,24 @@
 edit();%0A    
- 
-   
 prefsEditor.
@@ -841,20 +841,16 @@
 value);%0A
-    
     pref
@@ -866,15 +866,13 @@
 pply();%0A
-  
   %7D%0A%7D

修正：String值可为空