博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
fragment 中利用spinner实现省市联动
阅读量:5027 次
发布时间:2019-06-12

本文共 3144 字,大约阅读时间需要 10 分钟。

(1)布局文件就不在说明了,主要说代码的实现,先把代码贴上!

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
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
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);进行监听,能够通过两种方法实现联动,第一个是获取条目的位置,第二个是获取条目的内容,我採用的是第二个。

这样就能够实现省市联动了!

转载于:https://www.cnblogs.com/mengfanrong/p/4044383.html

你可能感兴趣的文章
[HIHO1149]回文字符序列(dp)
查看>>
[HDU1402]A * B Problem Plus(FFT)
查看>>
[CF803C] Maximal GCD(gcd,贪心,构造)
查看>>
逆时针旋转的矩阵变换
查看>>
第10周15/16/17
查看>>
【数据库】SQL两表之间:根据一个表的字段更新另一个表的字段
查看>>
四六级作文常见错误解析(转载)
查看>>
Tomcat
查看>>
./是当前目录 ../是当前的上一级目录。上上级就是../../一般绝对路径时候常用...
查看>>
linux支持FTP和SFTP服务【1】
查看>>
树的递归与非递归遍历方法
查看>>
每天一个Linux命令(6):rmdir命令
查看>>
oracle连接的三个配置文件(转)
查看>>
Vim配置文件(Vimrc)
查看>>
RecyclerView 局部刷新(获取viewHolder 去刷新)
查看>>
PHP表单(get,post)提交方式
查看>>
使用vbs或者bat脚本修改IE浏览器安全级别和选项
查看>>
Silverlight入门
查看>>
Silverlight动态调用WEBSERVICE,WCF方法
查看>>
LeetCode 895. Maximum Frequency Stack
查看>>