iOS 上的键盘扩展是该类的子UIInputViewController
类,具有textDocumentProxy
与底层文档交互的属性。该textDocumentProxy
对象公开了文档的一些重要特征,例如自动大写类型。问题是,键盘扩展如何知道底层文档何时发生变化?
例如,当我在消息应用程序中点击以撰写新消息时,“收件人”字段使用与消息正文输入框不同的输入特征。但是由于在将焦点从一个字段切换到另一个字段时键盘不会消失,因此文本文档代理对象会即时更改。键盘扩展能注意到这样的变化吗?
我尝试通过 KVO 观看textDocumentProxy
和[[self textDocumentProxy] autocapitalizationType]
属性,但这不起作用。使用计时器检查autocapitalizationType
属性会显示更改,但显然我想避免轮询解决方案。