如何在放入nib文件时隐藏UIPickerView

时间:2014-04-06 16:03:22

标签: ios xcode uipickerview

我从here选择了一个选择器视图。它工作得很好。当app运行时,它会显示出来。但是,我希望在点击文本字段时显示它,之前我希望隐藏它。 Country picker是UIPickerView的子类,放在nib文件中。请帮忙。

1 个答案:

答案 0 :(得分:1)

您应该按照以下步骤操作:

1. 在您的所有者类中创建IBOutlet属性(不要忘记在头文件中添加UITextFieldDelegate):

@property (weak, nonatomic) IBOutlet CountryPicker *myPickerView;
@property (weak, nonatomic) IBOutlet UITextField *myTextField;

2。将您的IBOutlets与您的PickerView,xib中的TextField连接。并在您的viewDidLoad方法中添加:

self.myTextField.delegate = self;

从现在开始,您应该实现UITextField委托方法。 UITextField Protocol Reference

    - (void)textFieldDidBeginEditing:(UITextField *)textField
    {
      self.myPickerView.hidden = NO;
    }

此方法通知委托指定的文本字段刚成为第一个响应者。您可以使用此方法更新委托的状态信息。例如,您可以使用此方法显示编辑时应该可见的叠加视图。

    - (void)textFieldDidEndEditing:(UITextField *)textField
    {
      self.myPickerView.hidden = YES;
    }

在文本字段重新启动其第一个响应者状态后调用此方法。您可以使用此方法更新委托的状态信息。例如,您可以使用此方法隐藏仅在编辑时才可见的叠加视图。

EDIT1: GitHub Sample