UIPickerView的使用
UIPickerView是iOS中的选择器,用来选择使用。UIPickerView替代了PC上的下拉列表框。

效果图:


UIPickerView的初始化
UIPickerView * _pickerView; // 选择器
    
NSArray * _dataSource; // 数据源

给定初始化数据
_dataSource = @[@"艾欧尼亚 电信一", @"祖安 电信二", @"诺克萨斯 电信三", @"班德尔城 电信四", @"皮尔特沃夫 电信五", @"战争学院 电信六", @"巨神峰 电信七", @"雷瑟守备 电信八", @"裁决之地 电信九", @"黑色玫瑰 电信十", @"暗影岛 电信十一"];

_pickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(10, CGRectGetMaxY(_filed2.frame), 300, 100)];
_pickerView.delegate = self; // 设置代理
_pickerView.dataSource = self; // 指定数据源
_pickerView.showsSelectionIndicator = YES; // 显示选中框    
[self.view addSubview:_pickerView];

// 当前类要遵守UIPickerViewDataSource, UIPickerViewDelegate 协议

#pragma mark - 实现pickerView协议中的方法
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {
    return 1; // 返回列数
}

- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {
    return _dataSource.count; // 返回每一列的最大行数
}

- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component {
    return _dataSource[row]; // 返回每一列每一行的具体内容
}

- (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component {
    return 30; // 返回每一列每一行的高度
}

- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {
    _filed2.text = _dataSource[row]; // 选中了哪一列哪一行
}

END

posted on 2014-10-04 10:20  寒竹子的技术博客  阅读(242)  评论(1编辑  收藏  举报