Android:实现共享首选项

时间:2012-02-11 08:44:26

标签: android sharedpreferences

我正在创建一个应用程序,我必须在共享首选项中保存一些字符串并在另一个页面上显示它意味着我想在一个活动中以共享首选项保存用户名,并希望在其他活动上显示用户名活动。对此有任何帮助将不胜感激。 感谢

3 个答案:

答案 0 :(得分:1)

您需要做的就是这(所有代码都是一个活动或服务(即上下文)的一部分: 获取SharedPreferences对象:

static final String PREFS_NAME = "MyPrefs";
static final String USER_KEY = "user";

SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);

存储字符串:

String username = ...
SharedPreferences.Editor editor = settings.edit();
editor.putString(USER_KEY, username);
editor.commit();

阅读:

String username = settings.getString(USER_KEY,null); // 2nd param is default value, used if prefs value is undefined

以下是更多详情:http://developer.android.com/guide/topics/data/data-storage.html

答案 1 :(得分:0)

要实现首先创建一个类,在该类中,您需要在共享首选项中编写有关get和set值的所有函数。请看下面的代码。

public class SaveSharedPreference 
{
    static final String PREF_USER_NAME= "username";

    static SharedPreferences getSharedPreferences(Context ctx) {
        return PreferenceManager.getDefaultSharedPreferences(ctx);
    }

    public static void setUserName(Context ctx, String userName) 
    {
        Editor editor = getSharedPreferences(ctx).edit();
        editor.putBoolean(PREF_USER_NAME, userName);
        editor.commit();
    }

    public static boolean getUserName(Context ctx)
    {
        return getSharedPreferences(ctx).getString(PREF_USER_NAME, "");
    }
}

现在,您可以先从特定活动中设置用户名的值,然后从任何活动中获取用户名的值。

答案 2 :(得分:0)

你可能想看看这个图书馆。它安全且易于使用。

https://prashantsolanki3.github.io/Secure-Pref-Manager/

示例代码:

SecurePrefManager.with(this)
            .set("user_name")
            .value("LoremIpsum")
            .go();
相关问题