gpt4 book ai didi

ios - iOS 7 中文本字段的弹出/模式选择器

转载 作者:IT王子 更新时间:2023-10-29 07:46:15 26 4
gpt4 key购买 nike

我在弄清楚如何实现标准弹出式选择器时遇到了很多麻烦。就像用户选择生日文本字段时许多应用程序的注册屏幕一样,我希望出现一个弹出式选择器,以便用户可以选择他们的生日,单击完成,格式化的日期将被添加到文本字段。这看起来并没有那么难,但在 iOS 7 中似乎没有简单、清晰、标准的方法来做到这一点。

我在互联网上搜索过,有人说要使用模态框,有人说要使用操作表,有人说要弹出窗口,还有人说要使用单独的 View Controller 。

谁能告诉我执行此操作的标准方法是什么或如何实现它的片段?

最佳答案

我认为“标准”方式是将选择器设置为文本字段的 inputView。

UIPickerView *picker = [[UIPickerView alloc] init];
self.textField.inputView = picker;

它会从底部弹出,就像您在文本字段中触摸时键盘所做的那样。

下面是如何使用选择器作为输入 View 的简单实现:

@interface ViewController ()
@property (weak, nonatomic) IBOutlet UITextField *tf;
@property (strong,nonatomic) NSArray *theData;
@end

@implementation ViewController

- (void)viewDidLoad {
[super viewDidLoad];
UIPickerView *picker = [[UIPickerView alloc] init];
picker.dataSource = self;
picker.delegate = self;
self.tf.inputView = picker;
self.theData = @[@"one",@"two",@"three",@"four"];
}

-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {
return self.theData.count;
}

-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {
return 1;
}

-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component {
return self.theData[row];
}

-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {
self.tf.text = self.theData[row];
[self.tf resignFirstResponder];
}

关于ios - iOS 7 中文本字段的弹出/模式选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20438237/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com