Java 如何将SharedReferences与微调器一起使用
我想使用Java 如何将SharedReferences与微调器一起使用,java,android,sharedpreferences,spinner,Java,Android,Sharedpreferences,Spinner,我想使用SharedReferences保存在微调器中选择的选定项目 这是我的代码 package com.mulder.jip.schoolroosterbeta2; import android.app.Activity; import android.content.Context; import android.content.SharedPreferences; import android.preference.PreferenceManager; import android.s
SharedReferences
保存在微调器中选择的选定项目
这是我的代码
package com.mulder.jip.schoolroosterbeta2;
import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.preference.PreferenceManager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.Toast;
import java.util.ArrayList;
import java.util.List;
public class CustumMaandag extends Activity {
Context Context = this;
private Spinner les1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_custum_maandag);
{
les1 = (Spinner) findViewById(R.id.les1);
List<String> list = new ArrayList<String>();
list.add("Test1");
list.add("Test2");
list.add("Test3");
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>
(this, android.R.layout.simple_spinner_dropdown_item,list);
dataAdapter.setDropDownViewResource
(android.R.layout.simple_spinner_dropdown_item);
les1.setAdapter(dataAdapter);
les1.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
Object obj = parent.getItemAtPosition(pos);
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(Context);
SharedPreferences.Editor prefsEditor = prefs.edit();
prefsEditor.putString("object", obj.toString());
prefsEditor.commit();
}
public void onNothingSelected(AdapterView<?> parent) { }
});
}
}
}
package com.mulder.jip.schoolroosterbeta2;
导入android.app.Activity;
导入android.content.Context;
导入android.content.SharedReferences;
导入android.preference.PreferenceManager;
导入android.support.v7.app.AppActivity;
导入android.os.Bundle;
导入android.view.view;
导入android.widget.AdapterView;
导入android.widget.ArrayAdapter;
导入android.widget.Spinner;
导入android.widget.Toast;
导入java.util.ArrayList;
导入java.util.List;
公共类custummandag扩展活动{
上下文=这个;
私人纺纱机les1;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_custum_maandag);
{
les1=(微调器)findViewById(R.id.les1);
列表=新的ArrayList();
列表。添加(“测试1”);
列表。添加(“测试2”);
列表。添加(“测试3”);
ArrayAdapter dataAdapter=新的ArrayAdapter
(这是android.R.layout.simple\u微调器\u下拉列表\u项,列表);
dataAdapter.setDropDownViewResource
(android.R.layout.simple\u微调器\u下拉菜单\u项);
les1.setAdapter(数据适配器);
les1.setOnItemSelectedListener(新的AdapterView.OnItemSelectedListener(){
已选择公共位置(AdapterView父项、视图、整数位置、长id){
Object obj=parent.getItemAtPosition(pos);
SharedReferences prefs=PreferenceManager.GetDefaultSharedReferences(上下文);
SharedReferences.Editor prefsEditor=prefs.edit();
putString(“object”,obj.toString());
提交();
}
未选择的公共无效(AdapterView父项){}
});
}
}
}
我做错了什么?试试这个
String selecteditem = les1 .getSelectedItem().toString();
并像这样保存在共享pref中
prefsEditor.putString("object", selecteditem );
试试这个
String selecteditem = les1 .getSelectedItem().toString();
并像这样保存在共享pref中
prefsEditor.putString("object", selecteditem );
尝试在
onItemSelected(…){*here}
String selectedText = les1.getSelectedItem().toString();
SharedPreferences.Editor editor = getSharedPreferences("your_prefs_name", MODE_PRIVATE).edit();
editor.putString("your_key", selectedText);
editor.commit();
尝试在
onItemSelected(…){*here}
String selectedText = les1.getSelectedItem().toString();
SharedPreferences.Editor editor = getSharedPreferences("your_prefs_name", MODE_PRIVATE).edit();
editor.putString("your_key", selectedText);
editor.commit();
错误是什么?@MRX我在发布此问题时使用了错误的代码,我使用的原始代码是
SharedReferences prefs=PreferenceManager.GetDefaultSharedReferences(this.getApplicationContext())代码>而不是SharedReferences prefs=PreferenceManager.GetDefaultSharedReferences(上下文)代码>错误是无法解析符号getApplicationContext
错误是什么?@MRX我在发布此问题时使用了错误的代码,我使用的原始代码是SharedReferences prefs=PreferenceManager.GetDefaultSharedReferences(this.getApplicationContext())代码>而不是SharedReferences prefs=PreferenceManager.GetDefaultSharedReferences(上下文)代码>错误是它无法解析这一行les1.setAdapter(dataAdapter)之后的符号getApplicationContext
;在这一行之后是les1.setAdapter(dataAdapter);