标签:控件
UIPickerView
轮转界面提供多值选项,和tableView挺类似
1.首先初始化,并设置大小,这里的大小设置是否有作用,再试。
_picker = [[UIPickerView alloc]initWithFrame:CGRectMake(0, 100, 375, 300)];
2.实现两个代理方法UIPickerViewDelegate,UIPickerViewDataSource
_picker.delegate = self;
_picker.dataSource = self;
3.加到view上类似于其他控件的使用
[self.view addSubview:_picker];
4.要实现的代理方法
----1.返回多少列
-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView{
return 1;
}
----2.返回多少行,每一列中的多少行
-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{
return self.flags.count;
}
----3.自定义pickview的行,用来显示内容的
-(UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view{
return flagView;
}
----4.返回pickerView的高度
-(CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component{
return 100;
}
----5.返回宽度
-(CGFloat)pickerView:(UIPickerView *)pickerView widthForComponent:(NSInteger)component{
return 200;
}
----6.数据,可以直接显示内容的。
-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{
NSArray *items = self.foods[component];
return items[row];
}
----7.选中时候的,选中的效果
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{
1》找到列
NSArray *items = self.foods[component];
2》找到行
NSString *str = items[row];
NSLog(@"%@",str);
NSLog(@"%ld,%ld",row,component);
}
----8.刷新第一列的。类似tableView的刷新
[_pickView reloadComponent:1];
----9.不管之前第二列时几行,重新刷新之后都显示第二列的第二行
[_pickView selectRow:1 inComponent:1 animated:YES];
UIDatePicker
1.初始化
_datePicker = [[UIDatePicker alloc]initWithFrame:CGRectMake(20, 150, 300, 200)];
2.设置中文时间
_datePicker.locale = [[NSLocale alloc]initWithLocaleIdentifier:@"zh_CN"];
设置为中国、,如果不设置默认为英文显示
3.跟踪所有可用的地区,取出想要的地区
NSLog(@"%@", [NSLocale availableLocaleIdentifiers]);
4.设置DatePicker的日历。 默认为当天。
[_datePicker setCalendar:[NSCalendar currentCalendar]];
5.timeZone 设置DatePicker的时区。默认为设置为:
[_datePicker setTimeZone:[NSTimeZone defaultTimeZone]];
6..countDownDuration设置DatePicker的倒计时间.
----1) 设置日期选择的模
[_datePicker setDatePickerMode:UIDatePickerModeCountDownTimer];
----2) 设置倒计时的时长
----3) 倒计时的时长,以秒为单位
[_datePicker setCountDownDuration:10 * 60];
7.转换格式,显示当前的年月日
[_datePicker setDatePickerMode:UIDatePickerModeDate];
8.默认的选中模式
[_datePicker setDatePickerMode:UIDatePickerModeDateAndTime];
9。显示小时和分钟
[_datePicker setDatePickerMode:UIDatePickerModeCountDownTimer];
[self.view addSubview:_datePicker];
设置textField输入框的输入方式为UIDatePicker
1.采用这种方法就可以看改变下面的输入框的问题
UIDatePicker *p = [[UIDatePicker alloc]init];
2.在text的输入选择位UIDatePicker日期选择器
text.inputView = p;
[self.view addSubview: text];
3.设置的一个toolBar
UIToolbar *toolBar = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 375, 49)];
UIBarButtonItem *bar = [[UIBarButtonItem alloc]initWithTitle:@"第一个" style:UIBarButtonItemStylePlain target:self action:nil];
4.加一个固定的长度作为弹簧效果
UIBarButtonItem *barFit = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
UIBarButtonItem *bar1 = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(bar:)];
5.将设置的按钮加到toolBar上
toolBar.items = @[bar,barFit,bar1];
6.将toolBar加到text的输入框也就是UiDatePicker上
text.inputAccessoryView = toolBar;
版权声明:本文为博主原创文章,未经博主允许不得转载。
ios(学习)UIPickerView&&UIDatePicker&&toolBar
标签:控件
原文地址:http://blog.csdn.net/sinat_29998157/article/details/48129031