UIDatePicker,UIPickerView,MultiComponentPicker

UIDatePicker

属性:
Mode:Date and Time
Locale:
Interval:
最大值,最小值
    NSDate *date=[self.dataPicker date];
    NSDateFormatter *formatter=[[NSDateFormatter alloc]init];
    [formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
    NSString *date2=[formatter stringFromDate:date];

UIPickerView

代理方法:
delegate,dataSource

NSArray *data=[[NSArray alloc]initWithObjects:@"中国",@"日本",@"美国",@"法国",@"英国",@"意大利", nil];

#pragma mark --UIDataPicker DataSource Method--

- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
    return 1;//返回组件的个数,即列数
}

-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
    return [data count];//行数
}

-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
    return [data objectAtIndex:row];//每一行对应的标题
}

    NSInteger row=[singlePick selectedRowInComponent:0];
    NSString *selected=[data objectAtIndex:row];
    NSString *title=[NSString stringWithFormat:@"当前选中的国家是:%@",selected];
    UIAlertView *alertView=[[UIAlertView alloc]initWithTitle:title message:nil delegate:nil cancelButtonTitle:@"确定"
                                           otherButtonTitles:nil, nil];
    [alertView show];

多组件选择器:

#import "ThridViewController.h"

@interface ThridViewController ()
@property (weak, nonatomic) IBOutlet UIPickerView *picker;

@property (nonatomic,strong) NSDictionary *dic;
@property (nonatomic,strong) NSArray *provinces;
@property (nonatomic,strong) NSArray *city;
@end

@implementation ThridViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view from its nib.

    NSString *plistCity=[[NSBundle mainBundle]pathForResource:@"cities" ofType:@"plist"];
    NSDictionary *dic=[NSDictionary dictionaryWithContentsOfFile:plistCity];
    self.dic=dic;
    NSArray *arrayKey=[dic allKeys];
    self.provinces=[arrayKey sortedArrayUsingSelector:@selector(compare:)];
    NSString *provicesName=[self.provinces objectAtIndex:0];
    self.city=  [dic objectForKey:provicesName];
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

/*
#pragma mark - Navigation

// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    // Get the new view controller using [segue destinationViewController].
    // Pass the selected object to the new view controller.
}
*/

#pragma mark
          //numberOfComponentsInPickerView
-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
    return 2;
}

-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
    if (component==0) {
        return [self.provinces count];
    }
    else
    {
        return [self.city count];
    }
}

- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
    if (component==0) {
        return [self.provinces objectAtIndex:row];
    }
    return [self.city objectAtIndex:row];
}
- (CGFloat)pickerView:(UIPickerView *)pickerView widthForComponent:(NSInteger)component{
    if (component==0) {
        return 200;
    }
    return 100;
}

#pragma mark --delegate--
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{

    if (component==0) {
        NSString *keyName=[self.provinces objectAtIndex:row];
        NSArray *array=[self.dic objectForKey:keyName];
        self.city=array;
        [self.picker selectRow:0 inComponent:1 animated:YES];
        [self.picker reloadComponent:1];
   }
}

- (IBAction)btnOK:(id)sender {
       NSInteger row1=   [self.picker selectedRowInComponent:0];
    NSString *proName=[self.provinces objectAtIndex:row1];
    NSInteger row2=[self.picker selectedRowInComponent:1];
    NSString *cityName=[self.city objectAtIndex:row2];
    NSString *title=[NSString stringWithFormat:@"您选择的省份:%@,城市:%@",proName,cityName];
    UIAlertView *alertView=[[UIAlertView alloc]initWithTitle:title message:nil delegate:self cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];

    [alertView show];
}

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
   NSString *content= alertView.title;
    NSLog(@"%ld....%@",(long)buttonIndex,content);
}

 
时间: 2024-10-18 17:03:46

UIDatePicker,UIPickerView,MultiComponentPicker的相关文章

iOS开发——高级UI之OC篇&UIdatePicker&UIPickerView简单使用

UIdatePicker&UIPickerView简单使用 /***********************************************************************************/ 一:UIdatePicker:(日期控件) 1.UIDatePicker什么时候用? 当用户选择日期的时候,一般弹出一个UIDatePicker给用户选择. 2.UIDatePickerios6和ios7/8的区别 下面看看使用封装的代码怎么去实现它: 因为这个比较简

UIdatePicker&UIPickerView简单使用

/***********************************************************************************/ 一:UIdatePicker:(日期控件) 1.UIDatePicker什么时候用? 当用户选择日期的时候,一般弹出一个UIDatePicker给用户选择. 2.UIDatePickerios6和ios7/8的区别 下面看看使用封装的代码怎么去实现它: 因为这个比较简单,所以这里只是简单给出了封装之后UIDatePicker的

【IOS 开发】基本 UI 控件详解 (UIDatePicker | UIPickerView | UIStepper | UIWebView | UIToolBar )

转载注明出处 : http://blog.csdn.net/shulianghan/article/details/50348982 一. 日期选择器 (UIDatePicker) UIDatePicker 属性截图 : 1. UIDatePicker 控件属性 (1) Mode 属性 Mode 属性 : 用于设置 UIDatePicker 模式; -- Date 属性值 : 显示日期, 不显示时间; -- Time 属性值 : 显示时间, 不显示日期; -- Date and Time 属性值

面试题

最近找工作,有面试有笔试部分,故把笔试题自己整理了下. 面试能力要求:精通iphone的UI开发,能熟练操作复杂表视图,熟练使用图层技术, 可以自定义UI控件,使用类别扩展系统控件功能;  擅长通讯技术,熟悉各种通信协议,精通xml, json, 二进制或其他形式的自定义解析,能架设服务器实现客户端与服务器的通讯以提交开发效率; 熟练掌握各种数据存储技术,如core data, sqlite,  对象序列化,文件读写操作,熟悉数据库的设计.  精通 object-c,java, c  等编程语言

iOS 笔试题-1

ios笔试题 有一篇面试题总结文章:http://www.onmoso.com/ios/356.html 原文地址:http://www.cnblogs.com/jiangshiyong/archive/2012/08/27/2657862.html 面试能力要求:精通iphone的UI开发,能熟练操作复杂表视图,熟练使用图层技术, 可以自定义UI控件,使用类别扩展系统控件功能; 擅长通讯技术,熟悉各种通信协议,精通xml, json, 二进制或其他形式的自定义解析,能架设服务器实现客户端与服务

一梦浮生2012 IOS基础恶补

一梦浮生2012 精通iphone的UI开发,能熟练操作复杂表视图,熟练使用图层技术, 可以自定义UI控件,使用类别扩展系统控件功能; 擅长通讯技术,熟悉各种通信协议,精通xml, json, 二进制或其他形式的自定义解析,能架设服务器实现客户端与服务器的通讯以提交开发效率; 熟练掌握各种数据存储技术,如core data, sqlite,  对象序列化,文件读写操作,熟悉数据库的设计. 精通 object-c,java, c  等编程语言, 熟悉c++,对于 面向对象编程思想有深入理解,熟悉常

iOS完整学习步骤

一  C语言 1.1基本数据类型和基本运算 1.2 函数 数组 字符串 指针 1.3 预处理指令 1.4结构体 枚举 1.5 文件操作 内存管理 二 Objective - C 2.1 面向对象 2.2 内存管理 2.3 category protocol  Block 2.4 Copy KVC KVO 2.5 Foundicition框架 三 iOS基础 3.1 UIKit框架 3.1.1基础视图 uiButton  UIlabel  UIimageView  uitextFeild  UIS

iOS 常用控件的方法属性总结

一 UIVIew 常见属性1.frame 位置和尺寸(以父控件的左上角为原点(0,0))2.center 中点 (以父控件的左上角为原点(0,0))3.bounds 位置和尺寸(以自己的左上角为原点 (0,0))4.transform 形变属性(缩放,旋转)5.backgroundColor 背景颜色6.tag 标识(父控件可以根据这个标识找到对应的子控件,同一个父控件中的子控件不要一样)7. hidden 设置是否要隐藏8.alpha 透明度(0~1);9.opaque 不透明度(0~1);1

iOS 笔试题

转:http://blog.sina.com.cn/s/blog_b0c5954101014upb.html 1.截取字符串”20|http://www.621life.com“ 中 ‘|’字符前面及后面的数据,分别输出它们 NSRange range = [responseString rangeOfString:@"|"]; int location = range.location; NSString *str1 = [responseString substringToInde