UITextField 提示时键盘不显示
Posted
技术标签:
【中文标题】UITextField 提示时键盘不显示【英文标题】:Keyboard not showing when being prompted by UITextField 【发布时间】:2020-03-02 01:32:39 【问题描述】:在 ios 13.2 中,我注意到我的键盘不再出现在模拟器和真实设备上的应用程序中。当我在 UITextField 内点击时,除了光标在文本字段内闪烁外,什么也没有发生。有其他人遇到这个问题或知道如何解决吗?
更新
问题源于删除故事板文件并以编程方式启动 rootViewController
var windowScene = new UIWindowScene(session, connectionOptions);
Window = new UIWindow(windowScene);
Window.RootViewController = new ViewController();
Window.MakeKeyAndVisible();
在那之后,我注意到键盘在新项目中不再显示。
【问题讨论】:
你有没有使用任何键盘通知或自定义类? 你有minimal, reproducible example吗? 嗨,如果回答有帮助,感谢您提前标记或投票。 *.^ 【参考方案1】:关于模拟器:您可以先在 iOS 模拟器中查看设置。
看看这个截图,确保没有选择使用硬件键盘。或者您可以选择它并再次取消选择它,然后键盘将显示。
重启应用检查是否可以显示键盘。
【讨论】:
【参考方案2】:当您尝试使用编程方法在新的 SceneDelegate 中设置 rootViewController 时,这看起来像是一个错误,这与我们过去在 AppDelegate 中的做法相反。
我通过保留设置 rootViewController 的愚蠢情节提要并暂时保持 SceneDelegate.cs 干净并且我的键盘再次工作来解决这个问题。感谢您的所有回答。
【讨论】:
很高兴听到这个消息! *.^ 肯定是这样,但我已经完全删除了情节提要的东西。如何添加故事板,然后设置新的 rootViewController?【参考方案3】:设置文本文件委托。
@IBOutlet weak var urlTextField: UITextField!
override func viewDidLoad()
self.urlTextField.delegate = self // urlTextField it is your textfield outlet
如果删除这行代码,键盘不会出现,但如果存在,键盘会出现。
【讨论】:
以上是关于UITextField 提示时键盘不显示的主要内容,如果未能解决你的问题,请参考以下文章