不再支持 UITextField -webView

Posted

技术标签:

【中文标题】不再支持 UITextField -webView【英文标题】:UITextField -webView no longer supported 【发布时间】:2013-09-29 03:01:51 【问题描述】:

在处理某些文本字段时,我得到以下调试输出。

UITextField -webView 调用。新的文本架构不再支持此方法

有人可以解释为什么会出现这种情况吗?

我目前正在使用 ios 7 运行 XCode 5

【问题讨论】:

我可以通过创建一个新的单视图项目、向情节提要添加一个文本字段、在模拟器中启动、单击文本字段以召唤屏幕键盘,然后按我的(真实的,物理的)键盘上的“左”键。你是否以同样的方式产生这条信息?其他人可以复制吗? 啊,是的,这正是它发生的时候。那么这只是一个模拟游戏吗? 我不确定。要回答这个问题,您、我或阅读本文的人需要将蓝牙键盘连接到真实的 iOS 设备,尝试重复我们在模拟器中使用触发消息的相同步骤,并查看他们是否收到它。不幸的是,我目前既没有蓝牙键盘也没有真正的 iOS 设备,所以暂时那个人不会是我。 不管怎样,该消息似乎完全无害 - 显示时实际上似乎没有任何问题 - 所以我不会太担心它。与更理智的语言和框架不同,有时 Cocoa Touch 似乎只是吐出无意义的警告或日志行,即使您没有做错任何事情。只要我确定我没有做任何我不应该做的事情,并且似乎没有任何用户可见被破坏,我只是勉强地忽略这些(尽管这让我不开心)。 iOS 7.1 / Xcode 5.1 中问题依然存在。由于问题出在苹果身上,目前还没有解决方案。 【参考方案1】:

在 iOS 7 之前的早期 iOS 版本中,所有 UITextFields 和 UITextViews 都有底层 UIWebView 来显示格式化文本。从 iOS 7 开始,格式化文本是使用 TextKit 框架绘制的,因此 -webView 属性已被弃用。

Apple 框架似乎仍在内部调用 webView 方法。

【讨论】:

【参考方案2】:

重置模拟器为我解决了这个问题。

XCode 版本 5.1.1 iOS 模拟器 7.1

【讨论】:

以上是关于不再支持 UITextField -webView的主要内容,如果未能解决你的问题,请参考以下文章

从此不再担心键盘遮住输入框OC(

监测UITextField的变化

UITextField如何禁用粘贴? [复制]

swift 具有错误文本支持的UITextField。在UITextField下面绘制错误文本。

有啥方法可以禁用 UITextField 的听写支持?

Swift:UITextField 被键盘隐藏