Android 安卓在活动之间共享偏好

Android 安卓在活动之间共享偏好,android,sharedpreferences,Android,Sharedpreferences,我已在活动A中输入以下代码: SharedPreferences sharedPreferences = getSharedPreferences("prefs", 0); SharedPreferences.Editor editor = sharedPreferences.edit(); editor.putString("nome", nome.getText().toString()); editor.commit(); SharedPreferences sharedPreferen

我已在活动A中输入以下代码:

SharedPreferences sharedPreferences = getSharedPreferences("prefs", 0);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString("nome", nome.getText().toString());
editor.commit();
SharedPreferences sharedPreferences = getSharedPreferences("prefs", 0);
String a = sharedPreferences.getString("nome", "");
nomeMediador.setText(a); //TextBox
我已经在活动B中输入了以下代码:

SharedPreferences sharedPreferences = getSharedPreferences("prefs", 0);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString("nome", nome.getText().toString());
editor.commit();
SharedPreferences sharedPreferences = getSharedPreferences("prefs", 0);
String a = sharedPreferences.getString("nome", "");
nomeMediador.setText(a); //TextBox
有人能告诉我为什么在活动B上没有显示(在活动A上保存的值)?

请参阅下面的代码

活动A

SharedPreferences sharedPreferences = PreferenceManager
            .getDefaultSharedPreferences(getApplicationContext());
SharedPreferences.Editor editor = sharedPreferences.edit();

editor.putString("nome", nome.getText().toString());
editor.commit();
活动B

SharedPreferences sharedPreferences = PreferenceManager
                .getDefaultSharedPreferences(getApplicationContext());
String a = sharedPreferences.getString("nome", "");
nomeMediador.setText(a);

最好在string.xml文件的帮助下使用getter和setter,您永远不会遇到这种问题。为此,您可以查看此博客:


检查字符串“a”是否包含该值。如何以及何时启动活动B?它是在活动A中的提交之后发生的吗?nomeMediador是您的文本视图吗?