使用 UIPopover 显示键盘

Posted

技术标签:

【中文标题】使用 UIPopover 显示键盘【英文标题】:Show keyboard with a UIPopover 【发布时间】:2010-09-30 20:55:26 【问题描述】:

弹出框出现时如何显示键盘?

弹出框是我从 popoverController 调用的 UIViewController。

弹出框有一个 UITextField,当弹出框显示时,键盘也需要显示,光标转到 UITextfield。

我尝试将 becomeFirstResponder 放在 viewDidLoad 或 viewWillLoad 下,但不起作用。

 [userValue becomeFirstResponder];    

我想念什么? 这就是所有人。谢谢。

【问题讨论】:

【参考方案1】:

您需要使 textField 成为第一响应者,而不是弹出框本身。仅仅因为你让一个对象成为第一响应者,并不意味着它会显示键盘。它需要是一个具有文本输入属性的对象,例如 UITextField,才能显示键盘。

- (void)viewDidAppear:(BOOL)animated
   [_textField becomeFirstResponder];
   [super viewDidAppear:animated];

如果您希望特定的 textField 在每次显示弹出框时使用键盘成为第一响应者,则可以调用上述方法。请记住,此方法在弹出框加载后调用。

希望这会有所帮助。

【讨论】:

【参考方案2】:

在 viewWillAppear 方法中分配第一响应者。

【讨论】:

【参考方案3】:

我认为你没有将文本字段代表设置为 self 并尝试放置断点并检查正在发生的事情,它是否甚至会转到文本字段代表。

【讨论】:

以上是关于使用 UIPopover 显示键盘的主要内容,如果未能解决你的问题,请参考以下文章

使用 UIPopover 显示键盘

自定义 UIPopover

如何从另一个 UIPopover 控制器打开 UIPopover 控制器?

从另一个 Popover 中关闭显示为 Popover segue 的 ViewController

自定义material-ui popover [重复]

如何使用简单的 UIVIew 赋予 UIPopOver 类型的功能