/////别忘记 .h 中写代理 <UIPickerViewDelegate,UIPickerViewDataSource>
/////UIPickerView和UIDatePicker是类似的控件,只不过UIDatePicker是日期控件,只能放日期,而UIPickerView可以放任何东西。
- (void)viewDidLoad
{
[super viewDidLoad];
_dataArray = [[NSArray alloc] initWithObjects:@"a", @"b", @"c", @"d", @"e", @"f", nil];
UIPickerView* pv = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 460-216, 320, 216)];
pv.delegate = self;
pv.dataSource = self;
pv.showsSelectionIndicator = YES;
[self.view addSubview:pv];
//[pv release];
}
//多少组
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView{
return 2;
}
//每一组多少行
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{
if (component == 1) {
return 3;
}
if (component == 0) {
return _dataArray.count;
}
return 10;
}
//显示每一行的文本
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{
if (component == 0) {
return [_dataArray objectAtIndex:row];
}
return [NSString stringWithFormat:@"%d",row];
}
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view{
//如果是第0组
if (component == 0) {
//如果是第0组的第0行
if (row == 0) {
//return 显示的view
}
if (row == 1) {
//
}
}
UIView* myview = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 20, 20)];
myview.backgroundColor = [UIColor redColor];
return myview;
}
//选择一行就会调用这个方法
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{
NSLog(@"选择的是第%d组,第%d行",component,row);
}
iOS-视图-UIPickerView 滚动选择器
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 大纲 一、字典NSDictionary项目:Dictionary0321无序存储的,通过键值对的形式存在。 NSD...
- 1.日期选择器(UIDatePicker) 日期选择器有四种模式1.日期---年/月/日2.日期时间---年/月/...