数据管理 UIPickerViewDataSource 数据设置方法 : -- 设置数据 : UIPickerView 对象可以设置一个 UIPickerViewDataSource 对象, 用于数据管理 :(UIPickerView *)pickerView{ return 1; } -- 设置 UIPickerView 某列对应选项个数 : 该方法是 UIPickerViewDataSource 委托方法; //UIPickerViewDataSource 委托方法, 获取指定列 有多少个选项数据 - (NSInteger) pickerView:(UIPickerView *)pickerView 两个协议 */ @interface OCViewController : UIViewController <UIPickerViewDelegate, UIPickerViewDataSource :(UIPickerView *)pickerView{ return 4; } //UIPickerViewDataSource 委托方法, 设置 UIPickerView 每一列的行数 -
表示没有选中行 [pickView selectedRowInComponent:0]; UIPickerView的代理方法 UIPickerView的代理方法有两个UIPickerViewDelegate和UIPickerViewDataSource UIPickerViewDataSource 数据源代理方法设置UIPickerView的行数与列数。 @protocol UIPickerViewDataSource<NSObject> @required // 返回多少列 - (NSInteger)numberOfComponentsInPickerView 就不成问题了 // // ViewController.m // 01-点菜系统 #import "ViewController.h" @interface ViewController ()<UIPickerViewDataSource self.mainFoodLabel.text = self.foodsData[1][0]; self.drinkLabel.text = self.foodsData[2][0]; } #pragma mark UIPickerViewDataSource
plist.png 实现步骤 第一步 拖入一个UIPickerView到StoryBoard中,然后设置UIPickerViewDelegate,和UIPickerViewDataSource为当前的控制器 ViewController中进行实现,代码注释非常详细 #import "ViewController.h" @interface ViewController () <UIPickerViewDelegate, UIPickerViewDataSource
@property(nonatomic,assign) id<UIPickerViewDataSource> dataSource; @property(nonatomic
View Controller 的 ShowCountryPicker 方法, 在这个方法中, 我们初始化一个 UIPickerView 并把它显示在屏幕上, 要显示国家列表, 则需要指定数据源并实现 UIPickerViewDataSource
import "CJYearMonthSelectedView.h" 4 5 @interface CJYearMonthSelectedView () <UIPickerViewDelegate,UIPickerViewDataSource 主要需要说明的一点就是UIPickerView的用法,UIPickerView其实和UITableView很类似,在初始化的时候需要设置其数据代理和视图代理(UIPickerViewDelegate,UIPickerViewDataSource
它就会自动呼出inputView和inputAccessoryView; @interface MyTableViewCell : UITableViewCell<UIPickerViewDelegate,UIPickerViewDataSource
说白了最核心就是对UIPickerViewDelegate和UIPickerViewDataSource两个代理中的相应的方法的封装。
] override func viewDidLoad() { super.viewDidLoad() } } extension ViewController: UIPickerViewDataSource { // UIPickerViewDataSource // 返回选择器的列数 func numberOfComponents(in pickerView: UIPickerView