安卓之高级控件Spinner下拉框
来源:互联网 发布:数据库事务的原理 编辑:程序博客网 时间:2024/06/06 04:17
Spinner控件下拉框运用在地址的二级联动中
效果如图:
XML关键代码:
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical" android:layout_width="match_parent"
- android:layout_height="match_parent">
- <Spinner
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:id="@+id/s_main_province"></Spinner>
- <Spinner
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:id="@+id/s_main_city"></Spinner>
- </LinearLayout>
Java关键代码:
- public class MainActivity extends AppCompatActivity {
- private Spinner s_main_province;
- private Spinner s_main_city;
- private List<String> province;
- int index=0;
- private SimpleAdapter sadapter;
- private ArrayAdapter cityAdapter;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- s_main_province = (Spinner) findViewById(R.id.s_main_province);
- s_main_city = (Spinner) findViewById(R.id.s_main_city);
- //设置省份下拉列表的适配器
- province=new ArrayList<>();
- province.add("湖南省") ;
- province.add("湖北省");
- province.add("甘肃省");
- //设置图片集合
- List<Integer> images=new ArrayList<>();
- images.add(R.drawable.bird);
- images.add(R.drawable.cat);
- images.add(R.drawable.cow);
- List<Map<String,Object>> lists=new ArrayList<>();
- for (int i = 0; i < province.size(); i++) {
- Map<String,Object> map=new HashMap<>();
- map.put("province",province.get(i));
- map.put("images",images.get(i));
- lists.add(map);
- }
- //设置市的集合
- String city1[]={"长沙市","湘潭市","衡阳市"};
- String city2[]={"武汉市","黄石市","襄阳市"};
- String city3[]={"兰州","白银市","平凉市"};
- final String str[][]={city1,city2,city3};
- //省域市集合
- final Map<String ,String[]> cityLists=new ArrayMap<>();
- for (int i = 0; i <province.size() ; i++) {
- cityLists.put(province.get(i),str[i]);
- }
- sadapter = new SimpleAdapter(this,lists,android.R.layout.activity_list_item,new String[]{"province","images"},new int[]{android.R.id.text1,android.R.id.icon});
- //给下拉列表设置适配器
- s_main_province.setAdapter(sadapter);
- s_main_province.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
- @Override
- public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
- //给市的下拉框设置配置器
- index=position;
- cityAdapter=new ArrayAdapter(MainActivity.this,android.R.layout.simple_list_item_1,cityLists.get(province.get(index)));
- s_main_city.setAdapter(cityAdapter);
- }
- @Override
- public void onNothingSelected(AdapterView<?> parent) {
- }
- });
- }
- }
阅读全文
0 0
- 安卓之高级控件Spinner下拉框
- 安卓之高级控件Spinner下拉框
- 安卓下拉框(Spinner)
- 安卓对话框之----下拉列表框(Spinner)
- 安卓对话框之----下拉列表框(Spinner)
- 安卓对话框之----下拉列表框(Spinner)
- 高级控件之列表选择框(Spinner)
- 安卓开发16:Spinner 下拉列表控件
- [一个星期自学安卓]Spinner下拉控件
- Spinner-----android 高级控件 (下拉列表)
- 安卓学习--------spinner控件
- 安卓控件使用系列25:Spinner下拉列表控件的使用方法
- 安卓自定义下拉框---Spinner的实现
- 安卓开发之自绘spinner控件
- Android UI控件之Spinner(下拉列表)
- android控件之spinner (下拉列表)
- Android 控件之七:Spinner 下拉列表
- Android控件之Spinner下拉列表
- Laravel常用的artisan命令
- 使用ReleaseBuffer()后,CString类变量数据清空
- 29.结构体求出班级中最高分和学号,将学生信息按照成绩从高到低输出。
- 微信小程序开发一些经验总结
- GMM高斯混合模型进行背景建模(Matlab)
- 安卓之高级控件Spinner下拉框
- Android之控件
- R语言神器
- 1118. Birds in Forest (25)
- ubuntu 12.04 安装Docker 实战
- STM32 ST-LINK Utility解决错误提示“Can not read memory!Disable Read Out Protection and retry”
- 30. 完成sort函数,实现:按照成绩从高到低的顺序输出各学生的信息。
- ISO8583报文协议
- java——类——final