Android studio 片段中的共享引用
我在Android studio 片段中的共享引用,android-studio,android-fragments,android-activity,sharedpreferences,Android Studio,Android Fragments,Android Activity,Sharedpreferences,我在fragment中使用了SharedReferences。 我想使用mainActivity中fragment的SharedReferences数据。 我该怎么做?请提供帮助。您可以为SharedReference创建一个单例类,然后您可以从任何活动或片段访问它 示例 Public void saveData() { SharedPreferences prefs = getActivity().getSharedPreferences(SHARED_PREFS, MODE_PRI.
fragment
中使用了SharedReferences
。
我想使用mainActivity
中fragment
的SharedReferences
数据。
我该怎么做?请提供帮助。您可以为
SharedReference
创建一个单例类
,然后您可以从任何活动
或片段
访问它
示例
Public void saveData() {
SharedPreferences prefs = getActivity().getSharedPreferences(SHARED_PREFS, MODE_PRI. VATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putString(TEXT,edit name.getText().toString());
editor.apply();
}
现在,您可以从任何活动
或片段
使用SessionManager,如下所示
public class SessionManager {
private static SessionManager jInstance;
private final SharedPreferences prefs;
private final SharedPreferences.Editor editor;
private SessionManager(Context context) {
prefs = context.getSharedPreferences("Your_Preference_name", Context.MODE_PRIVATE);
editor = prefs.edit();
}
public static synchronized SessionManager getInstance(Context context) {
if (jInstance != null) {
return jInstance;
} else {
jInstance = new SessionManager(context);
return jInstance;
}
}
public void setUserEmail(String userEmail){
editor.putString("user_email",userEmail);
editor.apply();
}
public String getUserEmail(){
return prefs.getString("user_email","");
}
}
SessionManager.getInstance(context).setUserEmail("abc@gmail.com");
String email = SessionManager.getInstance(context).getUserEmail();