How to save app settings?

前端 未结 6 1756
暖寄归人
暖寄归人 2020-12-07 03:01

How can I save the the settings of my app? Right now, for example, I have a togglebutton to turn on/off. But if I restart my phone, the toggle button is turned back on. Its

相关标签:
6条回答
  • 2020-12-07 03:12

    You need to use SharedPreferences to save the settings of your app locally. Refer this link for more details : http://developer.android.com/reference/android/content/SharedPreferences.html

    0 讨论(0)
  • 2020-12-07 03:12

    Use SharedPreferences as,

    To Save:

     SharedPreferences settings;
     SharedPreferences.Editor editor;
     public static final String PREFS_NAME = "app_pref";
     public static final String KEY_p_id = "KEY_test";
    
        settings = getSharedPreferences(PREFS_NAME, 0);
        editor = settings.edit();
        editor.putString(Login_screen.KEY_test, values.get(0));
        editor.commit();
    

    To Remove:

        editor.remove("KEY_test").commit();
    
    0 讨论(0)
  • 2020-12-07 03:13

    You should check out SharedPreferences. It's Android's way of persisting simple values. Or you could create a full database.

    0 讨论(0)
  • 2020-12-07 03:21

    Use Shared Preferences. Like so:

    Put this at the top of your class: public static final String myPref = "preferenceName";

    Create these methods for use, or just use the content inside of the methods whenever you want:

    public String getPreferenceValue()
    {
       SharedPreferences sp = getSharedPreferences(myPref,0);
       String str = sp.getString("myStore","TheDefaultValueIfNoValueFoundOfThisKey");
       return str;
    }
    
    public void writeToPreference(String thePreference)
    {
       SharedPreferences.Editor editor = getSharedPreferences(myPref,0).edit();
       editor.putString("myStore", thePreference);
       editor.commit();
    }
    

    You could call them like this:

    writeToPreference("on"); // stores that the preference is "on"
    writeToPreference("off"); // stores that the preference is "off"
    
    if (getPreferenceValue().equals("on"))
    {
       // turn the toggle button on
    }
    else if (getPreferenceValue().equals("off"))
    {
       // turn the toggle button off
    }
    else if (getPreferenceValue().equals("TheDefaultValueIfNoValueFoundOfThisKey"))
    {
       // a preference has not been created
    }
    

    Note: you can do this with boolean, integer, etc.

    All you have to do is change the String storing and reading to boolean, or whatever type you want.

    Here is a link to a pastie with the code above modified to store a boolean instead: http://pastie.org/8400737

    0 讨论(0)
  • 2020-12-07 03:21

    Use SharedPreferences to save small chunk of app data. Check the developer's website for this.

    Also check out this Tutorial for step by step guide.

    0 讨论(0)
  • 2020-12-07 03:26

    You can use local DB like SQlite for for your app.

    0 讨论(0)
提交回复
热议问题