UIPickerView as inputView of UITextField

非 Y 不嫁゛ 提交于 2019-11-26 23:06:15

问题


I've read a lot about how I can use a UIPickerView as the inputView of my UITextField. The thing is, I am able to call the UIPickerView when I tap on the UITextField. However, my app always loads with the UIPickerView shown. I have already tried changing the myownpickerview.hidden = YES; in viewDidLoad, but this causes problems when I click on the UITextField. It won't show up, and if I click multiple times, the debugger shows that there would be an error.

Can anyone point me in the right direction? I only want the UIPickerView shown after I tap on the UITextField

I'm still working on my first ever iOS app. Please be patient. Thank you =)


回答1:


Try this, it works fine, put it in viewdidload.

yourpicker = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 50, 100, 150)];
    [yourpicker setDataSource: self];
    [yourpicker setDelegate: self];
    yourpicker.showsSelectionIndicator = YES;
    self.yourtextfield.inputView = yourpicker;

do not [self.view addSubview: yourpicker]; this




回答2:


Use like this,

 // Picker
UIPickerView *picker = [[UIPickerView alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width,150)];
picker.dataSource = self;
picker.delegate = self;

// Tool bar
UIToolbar *pickerToolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width,35)];
pickerToolbar.barStyle = UIBarStyleDefault;

// Bar button
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(pickerDoneButtonTapped:)];
UIBarButtonItem *flexSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
[pickerToolbar setItems:@[flexSpace,doneButton]];

self.selectedLockerTextFiled.inputAccessoryView = pickerToolbar;
self.selectedLockerTextFiled.inputView = picker;

Below code for done button actions,

-(void)pickerDoneButtonTapped:(id)picker{
    [self.view endEditing:YES];}


来源:https://stackoverflow.com/questions/20740874/uipickerview-as-inputview-of-uitextfield

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!