XCode,目标 C - 键盘不会显示

Posted

技术标签:

【中文标题】XCode,目标 C - 键盘不会显示【英文标题】:XCode, objective C - Keyboard WILL NOT SHOW 【发布时间】:2021-07-22 09:20:07 【问题描述】:

我已经接手了一个 ios 应用程序的工作,尽管我不是一个训练有素的 iOS 开发人员,但到目前为止我已经设法很好地使用它添加了新功能。但是,我遇到了一个补丁,当我点击 UITextfield 时,我根本无法让键盘显示在屏幕上,应用程序的某些区域可以正常工作,但我添加的任何新区域都无法正常工作。是否有一段标准代码可以控制在您点击文本字段时显示键盘?

需要帮助

【问题讨论】:

键盘是自动的 - 不需要代码来“显示”它。插入符号 (|) 是否开始在文本字段中闪烁?如果没有,那么您的文本字段可能会被另一个视图覆盖。它可能在其父视图的范围之外...它可能被禁用...等等。如果它确实显示,那么你需要寻找明确防止键盘显示的代码。 当我点击文本字段时,它甚至没有意识到我已经点击了它...... 好的,所以这不是“如何显示键盘”的问题......问题是某些东西阻止了与文本字段的交互。在我之前的评论中,我列出了三个最常见的原因——但没有额外的细节,我只能建议你查看这些方向来调试它。 【参考方案1】:

除非您强制不打开,否则键盘会自动打开。

你可以检查以下,看截图。

    启用已选中 已选中用户交互启用 如果您正在检查模拟器,请从键盘尝试“command + k” textFieldShouldBeginEditing 委托返回 TRUE
-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField
    return TRUE;

【讨论】:

所以它现在只能在模拟器上工作,当我在设备上设置断点时,它会在我点击该字段时触发 textFieldShouldBeginEditing,但 textFieldDidBeginEditing 永远不会触发......在实际的 iphone 上它仍然像没有被窃听...【参考方案2】:

你是在模拟器还是真机上运行?

【讨论】:

我没有在模拟器上运行它,但不是在设备上,所以需要帮助...... 打开模拟器切换Simulator - > IO - > keyboard - > connection hardware keyboard options 不,它适用于模拟器。在 iphone 上运行时,键盘不会显示,并且文本字段似乎甚至无法识别它被触摸 我猜你的键盘上层还有一层覆盖了键盘,导致键盘无响应

以上是关于XCode,目标 C - 键盘不会显示的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 目标图标未显示

Xcode:在两个目标之间共享主故事板

xcode 4.6 无法显示部署目标 4.2

UI 测试 + postNotificationName + 永远不会到达观察者 + Xcode 7

XCode 4 - 设备未显示在架构“目标”下拉列表中

链接 NIB/Xib - 目标 C - xCode