android下拉可选菜单Spinner创建:
1, 创建一个HelloSpinner的android project
2, 修改main.xml文件:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:andro>7, 运行结果如下:
8, 如果用户选择了spinner其中的某一个item, 跳入到另外一个activity中,当从这么activity跳回来的时候,如何让spinner记得用户之前选择的那个一个item呢?这里用到了SharedPreferences:
8.1 声明一个SharedPreferences: SharedPreferences settings;
Editor editorsettings;
settings = getSharedPreferences("preferences_settings",Context.MODE_PRIVATE);
editorsettings = settings.edit(); 其中“preferences_settings”就是这个SharedPreferences的标志,我觉得就像是唯一的名字一样。
8.2在spinner的setOnItemSelectedListener方法里保存当时用户选择的item的位置和值 spinner.setOnItemSelectedListener(new OnItemSelectedListener(){
@Override
public void onItemSelected(AdapterView<?> parent, View arg1,
int postion, long id) {
selectedName = parent.getItemAtPosition(postion).toString();
editorsettings.putInt("SelectedPosition", postion);
editorsettings.putString("SelectedName", selectedName);
editorsettings.commit();
8.3 读取存在SharedPreferences里的值 SharedPreferences settings = getSharedPreferences("preferences_settings",0); //与上面的保持一致
String name = settings.getString("SelectedName", "");
int position = settings.getInt("SelectedPosition", 0 );
spinner.setSelection(position); //设置spinner的值,让其当前选择项是与以前的一样。