Java SharedReferences编辑器未执行

Java SharedReferences编辑器未执行,java,android,Java,Android,在下面的代码中,mEditor行中的一行似乎没有执行 到目前为止,我已经尝试了许多不同的组合,但无法正确执行。该值根本没有设置 如果我尝试使用该值,如在Toast中,我将收到ResourcesNotFound异常 在我的onCreateView中初始化SharedReference,片段 mSharedPreferences = PreferenceManager.getDefaultSharedPreferences(getActivity()); mEditor = mSharedPrefe

在下面的代码中,mEditor行中的一行似乎没有执行

到目前为止,我已经尝试了许多不同的组合,但无法正确执行。该值根本没有设置
如果我尝试使用该值,如在Toast中,我将收到ResourcesNotFound异常

在我的onCreateView中初始化SharedReference,片段

mSharedPreferences = PreferenceManager.getDefaultSharedPreferences(getActivity());
mEditor = mSharedPreferences.edit();

以下代码用于我的onClick,它有其他SharedReference,工作方式完全相同,执行良好。 第一行执行得很好,但包含“putInt”的第二行没有按预期执行

mEditor.putString(getString(R.string.pref_chosen_team), "T");
mEditor.putInt(getString(R.string.pref_round_played), 1);
mEditor.apply();

工作代码示例:


    else if(round_number <= 30){
            mEditor.putInt(getString(R.string.pref_round_played),round_number + 1);
            mEditor.apply();
    }

else if(四舍五入编号
我将收到ResourcesNotFind异常

我认为
R.string.pref\u round\u played
不存在,请检查您的
strings.xml
您没有发布详细的代码,所以请按照下面的方式保存共享首选项中的值

 public static final String PREFS_NAME = "MyPrefsFile";
 SharedPreferences.Editor editor = getSharedPreferences(PREFS_NAME , MODE_PRIVATE).edit();
 editor.putString("name", "john");
 editor.putInt("id", 123);
 editor.apply(); 
SharedPreferences prefs = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE); 
String name = prefs.getString("name", ""); // you can put default value if you need
int idName = prefs.getInt("id", 0); 
从共享首选项检索数据

 public static final String PREFS_NAME = "MyPrefsFile";
 SharedPreferences.Editor editor = getSharedPreferences(PREFS_NAME , MODE_PRIVATE).edit();
 editor.putString("name", "john");
 editor.putInt("id", 123);
 editor.apply(); 
SharedPreferences prefs = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE); 
String name = prefs.getString("name", ""); // you can put default value if you need
int idName = prefs.getInt("id", 0); 
如果这不适合你,请张贴你的完整代码

更新

把你的代码改成这个

mSharedPreferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
       SharedPreferences.Editor mEditor = mSharedPreferences .edit();

您应该
commit
请在此处发布完整的代码和错误日志。@这在本例中没有任何区别。与
getString()相同的结果
?您正在使用语言可翻译密钥?为什么要使用字符串资源作为密钥?您是如何尝试获取vale的?请将您的代码放在这里…我添加了更多的解释。我的所有共享引用都通过字符串资源存储在我的
string.xml
文件中