在Xcode预览中启用键盘

时间:2019-06-15 18:35:33

标签: xcode swiftui

在Xcode预览中点击Textfield时如何启用键盘。我以某种方式激活了它并单击了一些键,然后我不小心在Mac上键入了一个快捷方式,它消失了。

如何再次启用它?

2 个答案:

答案 0 :(得分:2)

这可能是一个错误,在某些情况下,我尝试在 debug 模式下运行预览,并注意到当敲击文本字段时,控制台会抛出一些不满足且无法访问的约束错误给他们。

我还从Xcode的“调试”菜单启用了“显示视图框架”,键盘框架实际上出现在屏幕上,但由于某些原因未显示。在极少数情况下,约束错误会无缘无故消失,并且键盘已成功显示,但只要重新启动预览,它就会再次消失。因此,这可能是一个错误,如果是的话,希望此问题在下一个版本中得到解决。

答案 1 :(得分:1)

事实证明,此设置(非常巧妙地)与 iOS Simulator 应用程序中的“连接硬件键盘”首选项相关联(在菜单栏中找到 I/O → 键盘 → 连接硬件键盘 )。键盘只会出现在“实时预览”模式下,并且此设置禁用,当预览具有焦点(和模拟器应用程序)时,一旦检测到任何直接键盘输入,Xcode 将立即重置设置不会反映此重置,因此要再次执行此操作,您必须两次切换它)。更糟糕的是,在模拟器应用程序中翻转设置本身是不够的;您必须强制预览完全重新加载它正在使用的底层模拟器。最简单的方法是重新启动 Xcode 或切换到不同的模拟设备(例如从 iPhone 11 到 iPhone 12)。您也可以尝试在终端中执行此命令:

xcrun simctl --set ~/Library/Developer/Xcode/UserData/Previews/Simulator\ Devices shutdown all

此命令不会影响在 iOS Simulator 应用程序中运行的任何模拟器,但 会导致所有预览停止工作,直到 Xcode 重新启动模拟设备,并可能导致 Xcode 的 UI 暂时行为异常(或至少当我在 Xcode 12.4 中尝试时效果是暂时的。

设置生效后,将焦点放在文本输入字段上会导致出现软键盘区域。该区域响应点击并且所有按键都可以工作,但键盘本身似乎没有呈现。这显然不是有意的,它可能在未来随时停止工作。