我目前在另一项活动中获取共享偏好时遇到一些问题。我目前在我的主要活动中设置了以下内容: OnCreate方法:
SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
SharedPreferences preferences = getPreferences(MODE_PRIVATE);
String tut = preferences.getString("KEY", "");
ip = tut;
然后我有一个菜单来编辑偏好:
SharedPreferences.Editor editor = getPreferences(
MODE_PRIVATE).edit();
String value = input.getText().toString();
editor.putString("KEY", value);
editor.commit();
SharedPreferences preferences = getPreferences(MODE_PRIVATE);
String tut = preferences.getString("KEY", "");
ip = tut;
但是,当我尝试在其OnCreate方法中的另一个活动中接收数据时,它无法获取数据:
第二项活动:
SharedPreferences preferences = getPreferences(MODE_PRIVATE);
String tut = preferences.getString("KEY", "");
ip = tut;
有什么想法吗?
答案 0 :(得分:0)
而不是使用" getPreferences(0)"您需要使用自己的名称设置和使用共享首选项,这是一个示例:
//Fragment Activity One
SharedPreferences prefs = getActivity().getSharedPreferences("user",0);
SharedPreferences.Editor setPrefs = prefs.edit();
setPrefs.putString("name",profile.getName());
setPrefs.putString("email",profile.getEmail());
setPrefs.putString("idFacebook",profile.getIdFacebook());
setPrefs.putString("password",profile.getPassword());
setPrefs.putString("bio",profile.getBio());
setPrefs.putInt("id",profile.getId());
setPrefs.commit();
//Fragment Activity Two
SharedPreferences prefs = getActivity().getSharedPreferences("user",0);
String name = prefs.getString("name","")
多数民众赞成我如何使用SharedPreferences,希望它有所帮助
答案 1 :(得分:0)
您正在使用私人版本的共享偏好设置;如何使用它,只能由原始活动看到这些值。您应该使用getSharedPreferences(String, int);
代替。请访问:http://developer.android.com/guide/topics/data/data-storage.html#pref