UIPickerView 创建中国地区显示 省份 市

第一步初始化 UIPickerView *pickerview; //城市滚动表

NSDictionary *dict; //用于存储省份-城市的数据

NSArray *provinceArray; //省份的数组

NSArray *cityArray; //城市的数组

第二步需要引入代理 UIPickerViewDataSource,UIPickerViewDelegate,

第三步把拥有的地区从文件取出来 要文件留言NSBundle *bundle = [NSBundle mainBundle];

NSString *plistPath = [bundle pathForResource:@"city" ofType:@"plist"];

provinceArray=[NSArray arrayWithContentsOfFile:plistPath];

NSLog(@"-----------%@",provinceArray);

cityArray = [[provinceArray objectAtIndex:0] objectForKey:@"cities"];

NSLog(@"+ + + + + %@",cityArray);

pickerview = [[UIPickerView alloc]initWithFrame:CGRectMake(50, 200, 250, 100)];

pickerview.delegate =self;

pickerview.dataSource =self;

[self.View addSubview:pickerview];

//用来显示取出的地区名字

placelabel = [[UILabel alloc]initWithFrame:CGRectMake(0, 55, Kwidth, 25)];

placelabel.backgroundColor = [UIColor redColor];

placelabel.textAlignment = NSTextAlignmentLeft;

[self.View addSubview:placelabel];

下面的为代理方法

//轮子个数

- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {

return 2;

}

//确定picker的每个轮子的item数

- (NSInteger)pickerView:(UIPickerView *)pickerView

numberOfRowsInComponent:(NSInteger)component {

if (component == 0) {//省份个数

return [provinceArray count];

} else {//市的个数

return [cityArray count];

}

}

//确定每个轮子的每一项显示什么内容

#pragma mark 实现协议UIPickerViewDelegate方法

-(NSString *)pickerView:(UIPickerView *)pickerView

titleForRow:(NSInteger)row forComponent:(NSInteger)component {

switch (component) {

case 0:

return [[provinceArray objectAtIndex:row] objectForKey:@"state"];

break;

case 1:

return [cityArray objectAtIndex:row];

break;

default:

return @"";

break;

}

}

//监听轮子的移动

- (void)pickerView:(UIPickerView *)pickerView

didSelectRow:(NSInteger)row inComponent:(NSInteger)component {

// NSLog(@"1111111111111 %d",cityArray.count);

// NSLog(@"1111111111111 %d",provinceArray.count);

//

switch (component) {

case 0:

cityArray = [[provinceArray objectAtIndex:row] objectForKey:@"cities"];

[pickerView selectRow:0 inComponent:1 animated:YES];

[pickerView reloadComponent:1];

NSLog(@"%@",[[provinceArray objectAtIndex:row] objectForKey:@"state"]);

NSLog(@"%@",[cityArray objectAtIndex:0]);

pla = [[NSString alloc]initWithFormat:@"%@",[[provinceArray objectAtIndex:row] objectForKey:@"state"]];

placelabel.text = [NSString stringWithFormat:@"%@-%@",[[provinceArray objectAtIndex:row] objectForKey:@"state"],[cityArray objectAtIndex:0]];

break;

case 1:

NSLog(@"%@",[cityArray objectAtIndex:row]);

placelabel.text = [NSString stringWithFormat:@"%@-%@",pla,[cityArray objectAtIndex:row]];

break;

default:

break;

}

}

时间: 2024-10-24 16:20:47

UIPickerView 创建中国地区显示 省份 市的相关文章

中国地区三级联动菜单(纯js制作)

第一步:在网页中写入如下代码: <!DOCTYPE html> <!--次行代表使用的是html5,如果不支持请换成html4--> <html> <head> <title>三级联动菜单</title><br> <script src="style/jsAddress.js"></script> <!--需要和js文件在同一目录下--> </head>

Ecshop 商品页配送方式添加 实现仿淘宝按地区显示运费

Ecshop实现仿淘宝按地区显示运费 淘宝网(Taobao)购物的宝贝详情页面,可以针对不同地区显示不同运费,运费由后台设定:结算时间,按重量.件数计算运费.Ecshop本身有配送方式插件,已有多家物流公司插件,例如:顺丰快递.申通快递.圆通快递等.本文介绍如何实现按地区显示运费,并且让每个商品绑定运费模板. 1.Ecshop后台配送方式创建 进入Ecshop后台"系统设置-->配送方式",将“顺丰快递”改名称为“粮食快递”,配送ID号为6. 2.商品绑定配送方式的运费模板 2.

意甲官网在中国地区被假网劫持,竟声称赞助?

意甲官网在中国地区被假网劫持,竟声称赞助? 请广大意甲球迷朋友小心辨别 谨防上当受骗 最近在各种不知名的二三流个人文章网站上通过广大球迷朋友对意甲联赛的热爱引起人们的关注的一篇假新闻--吉祥坊-WellBET是意甲官方赞助商,在大家的印象里对于国际的体育赛事的中国赞助商不外乎是阿里巴巴.腾讯.华为.海信等又有名气又有财力的中国企业,这"WellBET 吉祥坊"又是何方神圣???? 意甲联赛在国内关注度很高,国内一些商家看好其高关注度,积极投资这一赛事,争取赞助商名额,为自己的品牌扩大宣

iOS开发---UIButton 1 //创建一个可以显示图片的按钮。

1 //创建一个可以显示图片的按钮. 2 -(void)creatImageBtn{ 3 UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom]; 4 btn.frame = CGRectMake(100, 100, 100, 100); 5 UIImage *icon1 = [UIImage imageNamed:@"icon1.png"]; 6 UIImage *icon2 = [UIImage imageNamed

ASP.NET - 演练:创建网页以显示 XML 数据

数据通常是以 XML 格式提供给 Web 应用程序的.但是,XML 数据本质上是分层的,因此您可能希望能够在基于列表的控件中使用 XML 数据,如 GridView 或 DropDownList 控件.此演练演示如何将 XML 数据视为表格数据库表中的数据进行处理. 通过此演练,您将学会如何执行以下任务: ·使用数据源控件读取 XML 数据并将数据提供给列表控件. ·将 GridView 和 DataList 控件绑定到 XML 数据. ·创建显示逻辑相关的 XML 数据的主详细信息页. ·对

[转]国家网信办关于创建新型智慧城市标杆市建设要点

本文转自:http://www.scssorg.com/a/zhengcefagui/2016/0226/801.html 目前,深圳市.福州市和嘉兴市三市已正式向国家互联网信息办申报创建新型智慧城市标杆市. 随着国家治理体系和治理能力现代化的不断推进,随着“创新.协调.绿色.开放.共享”发展理念的全面贯彻,城市被赋予了新的内涵,对智慧城市建设提出了新的要求.国家互联网信息办在全面调查和摸清全国智慧城市建设情况的基础上,面对智慧城市建设遇到的新挑战和新要求,提出了新型智慧城市的概念,并且牵头组织

ios 在中国地区,24小时时间格式 系统设定下 获得12小时制时间的方法

如题,在中国地区,24小时时间格式 系统设定下,如果单单使用 NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 之后,无论用hh 还是用K,都无法取得12小时制的时间,都是24小时的. 需要加上一条设定 formatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];

UIPickerView的属性和常用方法 举例:显示省份和城市

1 #import "ViewController.h" 2 3 @interface ViewController () 4 5 @property(strong, nonatomic) UIPickerView * pickerView; 6 @property(strong, nonatomic) UILabel * label; 7 @property(strong, nonatomic) UIButton * button; 8 @property (nonatomic, s

Linux下打开Windows环境下创建的文本文件显示中文乱码问题

产生原因: Linux下打开Windows环境下创建的文本文件出现中文乱码,因为两种操作系统的中文压缩方式不同,在Windows环境下中文编码一般为GBK,而在Linux环境中为UTF-8,这就导致了在Windows下能正常显示的文件在Linux环境下打开出现了乱码. 解决方法: 使用iconv命令, 命令语法:iconv -f fromcode [-cs] [-t tocode [file ...] 假设乱码文件名为Hello.c,那么在终端可使用如下命令进行格式转换: iconv -f GB