一,效果图ide
二,代码。spa
ViewController.hcode
#import <UIKit/UIKit.h> @interface ViewController : UIViewController <UIPickerViewDataSource,UIPickerViewDelegate> @end
ViewController.mcomponent
#import "ViewController.h" #define Color(r, g, b,d) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:d] #define W [UIScreen mainScreen].bounds.size.width #define H [UIScreen mainScreen].bounds.size.height @interface ViewController () { NSMutableArray *arrayData; UIView *chooseView; } @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. //初始化选择界面 [self addChooseView]; } #pragma -mark -functions //初始化选择页面 -(void)addChooseView { //背景框 chooseView = [[UIView alloc]initWithFrame:CGRectMake(0,H- H*0.45, W, H*0.45)]; chooseView.backgroundColor = Color(230, 230, 230, 1); [self.view addSubview:chooseView]; //完成按钮上面的线 UIView *line3 = [[UIView alloc]initWithFrame:CGRectMake(0, 0, W, 1)]; line3.backgroundColor = Color(202, 202, 202, 1); [chooseView addSubview:line3]; //完成按钮下面的线 UIView *line4 = [[UIView alloc]initWithFrame:CGRectMake(0, 40, W, 1)]; line4.backgroundColor = Color(202, 202, 202, 1); [chooseView addSubview:line4]; //完成按钮 UIButton *finishedBtn = [UIButton buttonWithType:UIButtonTypeCustom]; finishedBtn.frame = CGRectMake(W-50, 5, 50, 30); [finishedBtn setTitleColor:[UIColor blueColor] forState:UIControlStateNormal]; [finishedBtn setTitle:@"完成" forState:UIControlStateNormal]; [finishedBtn addTarget:self action:@selector(doClickFinishButton) forControlEvents:UIControlEventTouchUpInside]; [chooseView addSubview:finishedBtn]; UIPickerView *choosePicker = [[UIPickerView alloc]initWithFrame:CGRectMake(0, 40, W, chooseView.bounds.size.height-40)]; choosePicker.delegate = self; choosePicker.dataSource = self; [chooseView addSubview:choosePicker]; arrayData=[[NSMutableArray alloc]initWithObjects:@"高",@"中",@"强",@"弱", nil]; } #pragma -mark -doClickActions -(void)doClickFinishButton { chooseView.hidden=YES; NSLog(@"点击完成按钮"); } #pragma -mark -UIPickerViewDelegate - (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView { return 1; } - (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component { return arrayData.count; } - (NSString*)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component { return [arrayData objectAtIndex:row]; } - (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component { NSString *chooseStr = [NSString stringWithFormat:@"%ld", (long)row]; NSLog(@"---chooseStr--%@",chooseStr); } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } @end