省市便利 UIPicherView
@property (strong,nonatomic) UIPickerView *pickerV;
@property (strong,nonatomic) NSArray *arr;
@property (strong,nonatomic) NSMutableArray *arrCity;
@property (strong,nonatomic) NSMutableArray *arrPro;
@property (assign,nonatomic) int index;
@property (strong,nonatomic) NSString *provice;
@property (strong,nonatomic) NSString *city;
@property (strong,nonatomic) UIButton *btn;
self.pickerV = [[UIPickerView alloc] initWithFrame:CGRectMake(40, 100, 300, 200)];
self.pickerV.backgroundColor = [UIColor grayColor];
self.pickerV.delegate = self;
self.pickerV.dataSource = self;
[self.view addSubview:self.pickerV];
NSString *path = [[NSBundle mainBundle] pathForResource:@"city" ofType:@".plist"];
self.arr = [NSArray array];
self.arr = [NSArray arrayWithContentsOfFile:path];
self.arrCity = [NSMutableArray array];
self.arrPro = [NSMutableArray array];
for (NSDictionary *dic in self.arr)
{
[self.arrPro addObject:dic[@"State"]];
}
self.index = (int)[self.pickerV selectedRowInComponent:0];
NSDictionary *dic1 = [self.arr objectAtIndex:self.index];
[self.arrCity addObjectsFromArray:dic1[@"Cities"]];
self.btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
self.btn.backgroundColor = [UIColor blueColor];
-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 2;
}
-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
if (component == 0)
{
return self.arrPro.count;
}
else
{
return self.arrCity.count;
}
}
-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
if (component == 0)
{
return self.arrPro[row];
}
else
{
return self.arrCity[row][@"city"];
}
}
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
if (component == 0)
{
[self.arrCity removeAllObjects];
NSString *provice = [self.arrPro objectAtIndex:row];
[self.arrCity addObjectsFromArray:self.arr[row][@"Cities"]];
[self.pickerV reloadComponent:1];
NSInteger cityIndex = [self.pickerV selectedRowInComponent:1];
NSString *city = [self.arrCity objectAtIndex:cityIndex];
NSString *msg = [NSString stringWithFormat:@"%@,%@",provice,city];
NSLog(@"%@",msg);
}
else
{
NSInteger proviceIndex = [self.pickerV selectedRowInComponent:0];
NSString *provice = [self.arrPro objectAtIndex:proviceIndex];
NSString *city = [self.arrCity objectAtIndex:row];
NSString *msg = [NSString stringWithFormat:@"%@,%@",provice,city];
NSLog(@"%@",msg);
}
}
省市便利 UIPicherView的更多相关文章
- jquery库和cityselect插 件的省市 级联
/*$(function(){ $("#select_provice").citySelect({ prov:"北京", nodata:"none&q ...
- iOS开发之"省市"二级联动的数据组织(PHP版)以及PickerView的实现与封装
之所以要发表这篇博客,还源于最近的开发工作所实现的一个小的Demo, 当然这个Demo不会涉及工作中App的一些内容,下方要实现的Demo是通用的.因为项目需求的迭代,要求在银行卡绑定中添加支行所在的 ...
- asp.net MVC4——省市三级联动
controller: public ActionResult GetCity(string id) { AreaService _areaSvc = new AreaService(); List& ...
- 智软科技医疗器械GSP监管软件通过多省市药监局检查
提供医疗器械GSP监管软件,通过多省市药监局检查,符合2016年最新GSP监管条例的要求. 企业客户列表 温岭市万悦医疗器械有限公司 杭州市上善医疗器械有限公司 武汉明德生物科技股份有限公司 http ...
- JavaScript 省市级联效果
JavaScript 省市级联效果 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...
- 省市级联.net
初学javascript,编译省市级联,使用json在一般处理程序中编译,利用ajax传递数据到web前台 <html xmlns="http://www.w3.org/1999/xh ...
- jquery省市联动,根据公司需求而写
//author:guan //2015-05-25 //省市联动 //实用说明,页面引用如下js //<script src="../js/jquery-1.6.3.min.js&q ...
- [java] jsoup 解析网页获取省市区域信息
到国家统计局抓取数据, 到该class下解析数据 /** * jsoup解析网页 * @author xwolf * @date 2016-12-13 18:11 * @since V1.0.0 */ ...
- 关于echarts3地图下钻省市
最近关于echarts3弄了个地图下钻,也许是因为运气不好,开始上来需要传递到的城市是成都,结果成都地图(js)加载下来总是挤到了一起,好尴尬,各方实验查找后发现原来是js文件中,成都市地图有个县市并 ...
随机推荐
- English Vocabulary
Creative - producing or using original and unusual ideas Computer literate - familiarity with comput ...
- HttpWebRequest的简单使用
新建新的空网站和一个default.aspx页面测试,实验例子: using System; using System.Collections.Generic; using System.IO; us ...
- Gdevops2016年全球敏捷运维峰会【上海站】嘉宾阵容
2016年全球敏捷运维峰会(Gdevops, Global Devops Summit)将于2016年在杭州.北京.广州.上海四城全面启动,本次峰会旨在搭建一个开发者与 运维者沟通交流的平台,围绕各种 ...
- ssh: scp命令
scp 复制命令 Eg. -r /tmp/q1 root@[::]/home 1.命令格式: scp [参数] [原路径] [目标路径] 2.命令功能: scp是 secure copy的缩写, sc ...
- Mysql表名区分大小写
mysql数据库在windows服务器上表名和字段名均不区分大小写, 但在linux服务器上表名默认是区分大小写的,可在/etc/my.cnf文件中的[mysqld]下面加上一条配置 lower_ca ...
- 关于erlang的binary
引自:http://cryolite.iteye.com/blog/1547252 1. binary数据是可以在不同进程间共享的 当然这些进程都在同一Erlang节点上. 这与普通term不同,后者 ...
- javascript动画效果之匀速运动(修订版)
在编写多块同时触发运动的时候,发现一个BUG, timer = setInterval(show, 30);本来show是一个自定义函数,当设为timer = setInterval(show(one ...
- jQuery,使用on代替delegate,live 写法区别
早期对页面上后期加载的动态元素,赋事件或值的时候,是使用live的. 由于效率比较低(其实数据不多也感觉不出来),后面使用delegate委托来代替了,再后面,1.7以后使用on 来代替delega ...
- SQL函数学习(二):DATEADD() 函数
DATEADD() 函数在日期中添加或减去指定的时间间隔. 语法 DATEADD(datepart,number,date) date 参数是合法的日期表达式.number 是您希望添加的间隔数:对于 ...
- Flask -- 入门
安装virtualenv 作用:可以为一个项目单独提供一份Python的安装,安全 pip install virtualenv 使用virtualenv为MyProject项目安装Python,并 ...