2019独角兽企业重金招聘Python工程师标准>>>
//初始化 pickerView
-(void)initPickerView{pickerArray = [NSArray arrayWithObjects:@"顺丰",@"申通",@"韵达",@"圆通",@"天天",@"全峰",@"中通",@"百世汇通", nil];logisticsPicker = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 568, 320, 180)];logisticsPicker.delegate = self; //绑定事件logisticsPicker.dataSource = self; //绑定数据元[logisticsPicker setBackgroundColor:[UIColor whiteColor]]; [self.view addSubview:logisticsPicker];[self.view bringSubviewToFront:logisticsPicker];//将视图放置最前面
}
//每行显示的个数
-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView{return 1;
}
//显示多少行
-(NSInteger) pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{return [pickerArray count];
}
//每行显示的标题名称
-(NSString*) pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{return [pickerArray objectAtIndex:row];
}//点击空白隐藏键盘
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{[self.view endEditing:YES];[self inView];
}
//设置隐藏动画
- (void)popView {CGContextRef context = UIGraphicsGetCurrentContext();[UIView beginAnimations:nil context:context];[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];[UIView setAnimationDuration:0.6];//动画时间长度,单位秒,浮点数[self.view exchangeSubviewAtIndex:0 withSubviewAtIndex:1];self.logisticsPicker.frame = CGRectMake(0, 400, 320, 180);[UIView setAnimationDelegate:self];// 动画完毕后调用animationFinished
// [UIView setAnimationDidStopSelector:@selector(animationFinished)];[UIView commitAnimations];
}
//设置弹出动画
- (void)inView {CGContextRef context = UIGraphicsGetCurrentContext();[UIView beginAnimations:nil context:context];[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];[UIView setAnimationDuration:0.6];//动画时间长度,单位秒,浮点数self.logisticsPicker.frame = CGRectMake(0, 568, 320, 180);[UIView setAnimationDelegate:self];// 动画完毕后调用animationFinished
// [UIView setAnimationDidStopSelector:@selector(animationFinished)];[UIView commitAnimations];
}
-(void)animationFinished{NSLog(@"动画结束!");
}
//绑定 页面点击事件
-(IBAction)logisticsPickerBtn:(id)sender{if(lpEntity){[self.view endEditing:YES];[self popView];}else{chvc = [[CalendarHomeViewController alloc]init];chvc.calendartitle = @"出行日期";[chvc setAirPlaneToDay:365 ToDateforString:nil];//飞机初始化方法chvc.calendarblock = ^(CalendarDayModel *model){logisticsName.text = [model toString];};[self.navigationController pushViewController:chvc animated:YES];}
}
//当你选中 pickerview 的某行时会调用该函数。
- (void)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {NSLog(@"You select row %ld",(long)row);logisticsName.text = [pickerArray objectAtIndex:row];
}
ps:这是我个人使用时用的,个人可根据自己的需求实际开发相关功能。