哪个应该是第一响应者:我的视图还是 UIDatePicker?
我正在创建 UITextField
的同级,但使用 UIDatePicker
而不是键盘。
我希望多个这样的控件能够很好地相互配合,并且也能够标准 UITextField
(即,当我的控件被激活时,将键盘替换为日期选择器,并在激活文本字段时隐藏日期选择器)。
让我困惑的一件事是第一响应者状态的处理。 UIDatePicker
似乎没有要求成为第一响应者。 应该是? 当我自己的控件被要求辞去第一响应者时,我可以依靠它不成为第一响应者并隐藏日期选择器吗?
我应该将 UIDatePicker
(或其他任何内容)设置为控件的 nextResponder
吗? 我不想处理任何事件,我只是想确保我的控件在必要时窃取并放弃焦点。
(在这种情况下我没有使用笔尖)
I'm creating sibling of UITextField
, but with UIDatePicker
instead of a keyboard.
I want multiple such controls to play nicely with each other and also standard UITextField
(i.e. swap keyboard for date picker when my control is activated, and hide date picker when a text field is activated).
One thing that confuses me is handling of first responder status. UIDatePicker
doesn't seem to ask to become the first responder. Should it? Can I rely on it not becoming first responder and hide date picker when my own control is asked to resign first responder?
Should I set UIDatePicker
(or anything else) as my control's nextResponder
? I don't want to handle any events, I just want to make sure that my control steals and resigns focus when necessary.
(I'm not using nibs in this case)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
重写类中的 resignFirstResponder 方法,在其中写入 hide-UIDatePicker 代码,检查实例是否是同级类的类别后。
Override the resignFirstResponder method in your class, write your hide-UIDatePicker code in it, after checking the instance is the category of your sibling class.