zoukankan      html  css  js  c++  java
  • 数据选择控件

    数据选择控件

    UIDatePicker——方便用户选择日期
    
    作用:方便用户的日期选择,并保证日期格式正确
    
    1.    初始化
    // 初始化日期控件,不用设置宽高,因为它的宽高是固定的
    UIDatePicker *datePicker = [[UIDatePicker alloc]init];
    
    2.    常用设置
    // 设置日期控件区域为简体中文
    [datePicker setLocale:[[NSLocale alloc]initWithLocaleIdentifier:@"zh_Hans_CN"]];
    // 设置日期控件格式
    [datePicker setDatePickerMode:UIDatePickerModeDate];
    
    3.设置日期选择控件的监听方法
    
    // 设定日期控件监听方法
    [datePicker addTarget:self action:@selector(dateValueChange:) forControlEvents:UIControlEventValueChanged];
    NSDateFormatter——日期转换成字符串
    
    NSDateFormatter专门负责日期格式的对象
    
    // 设置日期格式
    // 1. 实例化日期格式
    NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
    // 2. 设置日期格式字符串
    [formatter setDateFormat:@"yyyy-MM-dd"];
    // 3. 将指定日期转换成字符串
    NSString *dateString = [formatter stringFromDate:sender.date];
    
    NSDateFormatter专门负责日期格式的对象
    
    // 设置初始日期
    NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
    [formatter setDateFormat:@"yyyy-MM-dd"];
    NSDate *date = [formatter dateFromString:@”2000-01-01"];
    [datePicker setDate:date];
    UITextField扩展——设置键盘和键盘上面的工具栏
    
    // 设置日期文本的输入键盘
    [_dateText setInputView:datePicker];
    
    // 设置键盘上面的工具控件
    UIView *view = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 320, 44)];
    [view setBackgroundColor:[UIColor grayColor]];
    [_dateText setInputAccessoryView:view];

    UITextField——常用代理方法扩展

    // 当文本框开始获得焦点的时候调用

    
    

    - (void)textFieldDidBeginEditing:

    
    

    // 当用户失去焦点的时候调用

    
    

    - (void)textFieldDidEndEditing:

    
    

    // 在文本框准备聚焦的时候调用,返回NO代表不允许聚焦(编辑)

    
    

    - (BOOL)textFieldShouldBeginEditing:

    
    

    // 在文本框准备失去焦点(退出键盘)的时候调用,返回YES代表允许退出键盘

    
    

    - (BOOL)textFieldShouldEndEditing:

    
    

    // 在用户每次输入的时候都会调用,返回YES代表允许输入     

    
    

    - (BOOL)textField:

    
    

    shouldChangeCharactersInRange:replacementString:

     
    照片选择
    
    使用UIImagePickerController可以选择照片
    照片的来源UIImagePickerControllerSourceType包括:
    照片库
    照相机
    保存的照片
    使用步骤
    1. 判断照片来源是否可用
    2. 实例化照片选择控制器
    3. 设置照片源
    4. 设置是否允许编辑
    5. 设置代理
    6. 遵循协议
    7. 显示照片选择控制器
    
    照片选择代理方法
    通过代理方法的didFinishPickingMediaWithInfo字典可以获取选中的照片图像
    关闭照片选择控制器
    保存选中的图像
    UIPickerView——数据选择视图
    作用:负责从指定的数据源中选择数据
    
    要求:使用PickerView之前需要指定数据源
    
    UIPickerView——数据源
    数据源负责计算UIPickerView有多少列、多少行数据
    数据源须遵守UIPickerViewDataSource协议,数据源方法如下:
    
    // 返回总的列数
    - (NSInteger)numberOfComponentsInPickerView:
    // 返回第component列的行数
    - (NSInteger)pickerView:numberOfRowsInComponent:
    
    刷新数据方法
    
    [pickerView reloadComponent:1];
    一旦调用了这个方法,就会重新给数据源发送消息计算这列的行数、重新给代理发送消息获得这列的内容
    
    UIPickerView——代理
    代理可以给UIPickerView提供具体的数据、监听UIPickerView的一些事件
    代理必须遵守UIPickerViewDelegate协议,常用代理方法如下:
    
    // 第component列第row行显示什么字符串内容
    - (NSString *)pickerView:titleForRow:forComponent:
    // 每当选择了新的一行就会调用
    - (void)pickerView:didSelectRow:inComponent:
    
    UIPickerView——其他代理方法
    代理方法扩展
    // 第component列第row行显示什么样的UIView,最后一个view参数是用来性能优化的
    - (UIView *)pickerView:viewForRow:forComponent:reusingView:
    // 返回第component列每一行的高度
    - (CGFloat)pickerView:rowHeightForComponent:
    
    补充:
    自定义PickerView时,需要指定显示选择指示器属性
    pickerView.showsSelectionIndicator = YES;
  • 相关阅读:
    第一篇博文
    重拾javascript系列-JS声明详解之var
    重拾Javascript系列
    AtCoder DP Contest 26题
    DP题
    一众数论
    字符编码
    C# DateTime类型和sqlserver DateTime精度不同
    vs2015中的数据库架构对比工具(New Schema Comparison)
    SqlServer常用语句
  • 原文地址:https://www.cnblogs.com/HJiang/p/4280415.html
Copyright © 2011-2022 走看看