UITextField通过UIPickerView显示选择内容
来源:互联网 发布:知商金融安全吗 编辑:程序博客网 时间:2024/05/17 03:35
好长时间不用,很多技能恢复了初始化状态,今天简单的复习了一下UIPickerView,进行了如下总结,希望可以帮到初学者:
使用步骤:
- 初始化textField并设置代理
- 在代理方法 textFieldDidBeginEditing: 中初始化UIPickerView
- 通过触发按钮隐藏UIPickerView,并将UIPickerView选择后内容赋给textField.text
代码
(1)初始化
- (void)viewDidLoad { [super viewDidLoad]; self.sexTF = [[UITextField alloc] initWithFrame:CGRectMake(50, 80, 100, 40)]; self.sexTF.delegate = self; self.sexTF.borderStyle = UITextBorderStyleLine; self.sexTF.textColor = [UIColor blackColor]; self.sexTF.textAlignment = NSTextAlignmentLeft; self.sexTF.font = [UIFont systemFontOfSize:16]; [self.view addSubview:self.sexTF]; _sexArr = @[@"性别:男",@"性别:女"];}
(2) 实现UITextFieldDelegate
#pragma - mark - UITextFieldDelegate- (void)textFieldDidBeginEditing:(UITextField *)textField{ //隐藏键盘,避免遮挡pickerView [self.sexTF resignFirstResponder]; [self showSexPickerView];}
(3)初始化PickerView,并实现pickerView相关代理
- (void)showSexPickerView{ //控制pickerView隐藏按钮 UIButton *donePickerBtn = [UIButton buttonWithType:UIButtonTypeCustom]; donePickerBtn.frame = CGRectMake((self.view.frame.size.width-100)/2.0, self.view.frame.size.height - 50, 100, 40); donePickerBtn.titleLabel.font = [UIFont systemFontOfSize:18]; [donePickerBtn setTitle:@"确定" forState:UIControlStateNormal]; [donePickerBtn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal]; [donePickerBtn addTarget:self action:@selector(hideSexPickerView) forControlEvents:UIControlEventTouchUpInside]; [self.view addSubview:donePickerBtn]; //pickerView self.pickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 150, self.view.frame.size.width, 200)]; self.pickerView.showsSelectionIndicator=YES; self.pickerView.delegate=self; self.pickerView.dataSource=self; self.pickerView.backgroundColor = [UIColor colorWithWhite:1 alpha:0.8]; self.pickerView.showsSelectionIndicator = YES; [self.view addSubview:self.pickerView];}#pragma - mark - UIPickerViewDelegate- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{ return _sexArr[row];}#pragma - mark - UIPickerViewDataSource- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView{ return 1;}- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{ return _sexArr.count;}
(4)隐藏pickerView并将选中内容赋值给textField
- (void)hideSexPickerView{ NSInteger row = [self.pickerView selectedRowInComponent:0]; self.sexTF.text = [_sexArr objectAtIndex:row]; [self.pickerView removeFromSuperview];}
实现结果:
0 0
- UITextField通过UIPickerView显示选择内容
- UIPickerView内容居中显示,设置初始默认值
- UIPickerView内容居中显示,设置初始默认值
- UIPickerView内容居中显示,设置初始默认值
- UIPickerView as inputView of UITextField
- UITextField点击之后弹出UIPickerView
- 通过js选择按钮实现一个内容隐藏另一个内容显示
- UIPickerView 内容循环滚动
- UIPickerView(滚动选择控制器)
- iOS uipickerview 选择DATE
- UIPickerView + 城市选择
- UIPickerView城市选择
- [IOS]UIPickerView选择时间段
- UIPickerView - 城市选择
- UIPickerView选择省市
- UIPickerView(选择框)
- IOS Label 同步 UITextfield 显示输入内容(删除)
- iOS开发Debug之获取UITextField当前显示的内容
- [leetcode] Binary Tree Preorder Traversal
- 第二天-标识符
- 生产者消费者问题(thinking in java 709 )
- Spring事务配置及事务传播隔离级别
- 欢迎使用CSDN-markdown编辑器
- UITextField通过UIPickerView显示选择内容
- 全面讲解Tomcat下SSL证书的配置(四)
- Android开发之如何保证Service不被杀掉(broadcast+system/app)
- Android RecyclerView的使用学习
- Java多线程同步的方式
- Lua常用字符串操作
- ListView视图缓存settag缓存原理
- 【面试必备】Swift 面试题及其答案
- LoadRunner11录制打不开IE