基本上我想让用户点击文本字段,它会显示一个填充的选择器视图而不是键盘。我假设这也需要一个带有完成按钮的工具栏。我目前将该字段设置为输出和操作,仅此而已。我还有一个代码中的操作表,用于当用户提交某些内容时,如果这对可能为此使用操作表有任何影响。
我尝试研究这个主题,但 99% 的主题是日期选择器而不是选择器视图(或非常旧的代码)。
这是它的外观图像以供参考。
基本上我想让用户点击文本字段,它会显示一个填充的选择器视图而不是键盘。我假设这也需要一个带有完成按钮的工具栏。我目前将该字段设置为输出和操作,仅此而已。我还有一个代码中的操作表,用于当用户提交某些内容时,如果这对可能为此使用操作表有任何影响。
我尝试研究这个主题,但 99% 的主题是日期选择器而不是选择器视图(或非常旧的代码)。
这是它的外观图像以供参考。
UITextField
现在有inputView
房产了。在这里,您可以为其分配您想要的显示,包括 UIPickerView。你必须设置pickerview,并且必须在你的.h中实现UITextFieldDelegate
和:UIPickerViewDataSource
@interface ViewController : UIViewController <UIPickerViewDataSource, UIPickerViewDelegate>
然后创建选择器视图并将其分配给文本字段。
UIPickerView *pickerView = [[UIPickerView alloc] init];
pickerView.dataSource = self;
pickerView.delegate = self;
// ... ...
self.pickerTextField.inputView = pickerView;
因为你实现了 UIPickerView 接口,你现在必须实现这些方法:
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component;
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView;
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component;
然后你应该很高兴。如果您需要更多信息,请查看文档以了解其他一些方法。