fragment 中利用spinner实现省市联动
2014-10-22 21:28
274 查看
(1)布局文件就不在说明了,主要说代码的实现,先把代码贴上!
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.city, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_item);
再喷一下在fragment中实现省市联动的主要代码
ArrayAdapter<CharSequence> xianorquAdapter = ArrayAdapter.createFromRes (getActivity(), R.array.zhengzhou, android.R.layout.simple_spinner_item);
区别在createFromRes的第一个參数上,主要是由于子类不同,切记。
联动时仅仅要用setOnItemSelectedListener(listener);进行监听,能够通过两种方法实现联动,第一个是获取条目的位置,第二个是获取条目的内容,我採用的是第二个。
这样就能够实现省市联动了!
package com.example.cl; import android.annotation.SuppressLint; import android.app.Fragment; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.ArrayAdapter; import android.widget.Spinner; @SuppressLint({ "NewApi", "ValidFragment" }) public class Yezhuinformation extends Fragment{ private Spinner city; private Spinner quorxian; public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View v=inflater.inflate(R.layout.yezhuinformation, container, false); city=(Spinner)v.findViewById(R.id.city); quorxian = (Spinner)v.findViewById(R.id.quorxian); ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(getActivity(), R.array.city, android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_item); city.setAdapter(adapter); city.setOnItemSelectedListener(listener); return v; } OnItemSelectedListener listener = new OnItemSelectedListener() { public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { Spinner spinner = (Spinner)parent; String pro = spinner.getSelectedItem().toString(); ArrayAdapter<CharSequence> xianorquAdapter = ArrayAdapter.createFromResource (getActivity(), R.array.zhengzhou, android.R.layout.simple_spinner_item); if(pro.equals("武汉")) { xianorquAdapter = ArrayAdapter.createFromResource (getActivity(), R.array.wuhan, android.R.layout.simple_spinner_item); } else if(pro.equals("南阳")) { xianorquAdapter = ArrayAdapter.createFromResource (getActivity(), R.array.nanyang, android.R.layout.simple_spinner_item); } if(pro.equals("郑州")) { xianorquAdapter = ArrayAdapter.createFromResource (getActivity(), R.array.zhengzhou, android.R.layout.simple_spinner_item); } else if(pro.equals("杭州")) { xianorquAdapter = ArrayAdapter.createFromResource (getActivity(), R.array.hangzhou, android.R.layout.simple_spinner_item); } quorxian.setAdapter(xianorquAdapter); } public void onNothingSelected(AdapterView<?> parent) { } }; }(2)接下来喷一下在activity中实现省市联动的代码
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.city, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_item);
再喷一下在fragment中实现省市联动的主要代码
ArrayAdapter<CharSequence> xianorquAdapter = ArrayAdapter.createFromRes (getActivity(), R.array.zhengzhou, android.R.layout.simple_spinner_item);
区别在createFromRes的第一个參数上,主要是由于子类不同,切记。
联动时仅仅要用setOnItemSelectedListener(listener);进行监听,能够通过两种方法实现联动,第一个是获取条目的位置,第二个是获取条目的内容,我採用的是第二个。
这样就能够实现省市联动了!
相关文章推荐
- fragment 中利用spinner实现省市联动
- 通过Spinner视图实现二级联动功能(省市)
- 使用Spinner实现省市三级联动
- 用Spinner + SQLite实现省市县三级联动
- 利用php mysqsl dom 实现省市县三级联动
- Android中string-array利用反射实现省市联动
- ThinkPHP利用Ajax实现省市县地区三级联动
- 两种方式实现省市县三级联动(利用解析文本和json方式)
- 使用三层实现省市县三级联动(利用ajax实现无刷新效果)
- 利用ajax实现省市县三级联动之二,三
- ASP.NET利用JavaScript实现无刷新闪烁二级联动菜单
- [Ajax]用简易Ajax框架实现"省市二级联动下拉菜单"【转载】
- c#结合js实现无刷新省市联动菜单
- c#结合js实现无刷新省市联动菜单 (转载)
- 用简易Ajax框架实现"省市二级联动下拉菜单"【原创】
- Struts+Spring+Hibernate+dwr 实现省市区三级联动
- c#结合js实现无刷新省市联动菜单
- 一个实现省市菜单联动的Jav 4000 aScript
- Ajax + Struts 实现省市联动详解
- JS实现国家省市三级无刷新联动