Java 使用SharedReferences保存和加载微调器值
我试图使用Java 使用SharedReferences保存和加载微调器值,java,android,android-spinner,android-sharedpreferences,Java,Android,Android Spinner,Android Sharedpreferences,我试图使用SharedReferences在微调器中保存并加载所选项目。即使代码没有显示错误,它也不工作。谁来帮忙 country=(Spinner)findViewById(R.id.spinner); spinner = (Spinner) findViewById(R.id.spinner); ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.
SharedReferences
在微调器中保存并加载所选项目。即使代码没有显示错误,它也不工作。谁来帮忙
country=(Spinner)findViewById(R.id.spinner);
spinner = (Spinner) findViewById(R.id.spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
R.array.countries_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
public void saveFile(){
SharedPreferences sharedPref = getSharedPreferences(FileName,Context.MODE_PRIVATE);
SharedPreferences.Editor editor=sharedPref.edit();
int userChoice = country.getSelectedItemPosition();
editor.putInt("userChoiceSpinner",userChoice);
}
public void readFile(){
SharedPreferences sharedPref = getSharedPreferences(FileName,Context.MODE_PRIVATE);
int spinnerValue = sharedPref.getInt("userChoiceSpinner",0);
country.setSelection(spinnerValue);
}
country=(微调器)findViewById(R.id.Spinner);
微调器=(微调器)findViewById(R.id.spinner);
ArrayAdapter=ArrayAdapter.createFromResource(此,
R.array.countries\u数组,android.R.layout.simple\u微调器\u项);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
旋转器。设置适配器(适配器);
公共void保存文件(){
SharedReferences SharedReferences=GetSharedReferences(文件名,Context.MODE\u PRIVATE);
SharedPreferences.Editor=sharedPref.edit();
int userChoice=country.getSelectedItemPosition();
editor.putInt(“userChoiceSpinner”,userChoice);
}
公共void readFile(){
SharedReferences SharedReferences=GetSharedReferences(文件名,Context.MODE\u PRIVATE);
int spinnerValue=sharedPref.getInt(“userChoiceSpinner”,0);
国家选举(spinnerValue);
}
您忘记在SharedReferences
- 将您的首选项更改从此编辑器提交回它正在编辑的
SharedReferences
对象。这将以原子方式执行请求的修改,替换SharedReferences
中当前的任何内容李>
试试这个
public void saveFile(){
SharedPreferences sharedPref = getSharedPreferences(FileName,Context.MODE_PRIVATE);
SharedPreferences.Editor editor=sharedPref.edit();
int userChoice = country.getSelectedItemPosition();
editor.putInt("userChoiceSpinner",userChoice);
editor.apply();
}
您设置了国家/地区和微调器两个相同的id显示可能一个微调器未设置数据
country=(Spinner)findViewById(R.id.spinner);
spinner = (Spinner) findViewById(R.id.spinner);
缺少的部分确实是提交的编辑:apply()
@BIBINJOHNY不工作
表示您有任何错误我没有任何错误。但它并没有得到拯救。我已经添加了一些编辑文本,它们被正确保存。我无法找出原因。@BIBINJOHNY您国家/地区
为空检查您没有在其中设置适配器将其更改为微调器
@BIBINJOHNY共享崩溃日志,有问题