今天學習了使用UIPickerView和UIDatePicker。
我們接着之前的項目,將下載視圖控制器改爲自定義的視圖控制器。新建一個類DownLoadViewController下載視圖控制器繼承UIViewController。在loadView方法中創建PickerView。
UIPickerView *pickView = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 200, 0, 0)];
pickView.dataSource = self;
pickView.delegate = self;
pickView.showsSelectionIndicator = YES;
[self.view addSubview:pickView];
我創建了兩個數組,用於在PickerView裏面顯示。
num =[NSMutableArray arrayWithArray: @[@"一隻",@"二隻",@"三隻",@"四隻",@"五隻",@"六隻",@"七隻",@"八隻",@"九隻",@"十隻"]];
animal = [NSMutableArray arrayWithArray:@[@"雞",@"鴨",@"鵝",@"魚",@"鳥"]];
要在PickerView裏顯示數據,得實現UIPickerViewDataSource、UIPickerViewDelegate這兩個協議,實現裏面的方法。// 返回有多少列
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView{
return 2;
}
// 返回每列有多少行
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{
if (component==0) {
return [num count];
}
else
return [animal count];
}
//設置標題
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{
if (component==0) {
return num[row];
}
else
return animal[row];
}
最後在應用程序的代理類中創建DownLoadViewController。 //下載視圖控制器
DownLoadViewController *downLoad = [[DownLoadViewController alloc] init];
UITabBarItem *tabBarItem3 = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemDownloads tag:3];
downLoad.tabBarItem = tabBarItem3;
運行程序,點擊“下載”選項。
運行結果截圖:
UIDatePicker比UIPickerView使用簡單很多,如下。
//日期
UIDatePicker *datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(0,50,0,0)];
//設置模式
datePicker.datePickerMode = UIDatePickerModeTime;
//設置初始時間爲當前時間
datePicker.date = [NSDate date];
[self.view addSubview:datePicker];
運行結果截圖: