#pragma mark -- 里程数按钮的点击事件
- (void)mileageBtnClicked:(UIButton *)sender {
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"里程数/km\n\n\n\n\n\n\n\n" message:nil preferredStyle:UIAlertControllerStyleAlert];
UIPickerView *mileage = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 40, 270, 150)];
//指定Delegate
mileage.delegate = self;
//显示选中框
mileage.showsSelectionIndicator = YES;
[alert.view addSubview:mileage];
UIAlertAction *ok = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
NSInteger row = [mileage selectedRowInComponent:0];
NSString *mileageNum = [pickerData objectAtIndex:row];
mileageLabel.text = [NSString stringWithFormat:@"%@km", mileageNum];
}];
UIAlertAction *cancel = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
}];
[alert addAction:ok];
[alert addAction:cancel];
[self presentViewController:alert animated:YES completion:^{ }];
pickerData = [[NSArray alloc] initWithObjects:@"3000",@"3500",@"8000",@"8500",@"13000",@"13500",@"18000",@"18500",@"23000",@"23500",@"28500",@"33000",@"33500",@"38000",@"38500",@"43000",@"43500",@"48000",@"48500",@"53000",@"53500",@"58000",@"58500", nil];
}
#pragma mark -- UIPickerViewDataSource
//返回显示的列数
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {
return 1;
}
//返回显示的行数
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {
return pickerData.count;
}
#pragma mark -- UIPickerViewDelegate
//返回当前行的内容
- (nullable NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component __TVOS_PROHIBITED {
return [pickerData objectAtIndex:row];
}
原文:http://www.cnblogs.com/rglmuselily/p/5216821.html