有没有办法覆盖 UITextView UIKeyInput 以便可以从超级视图输入文本?

Posted

技术标签:

【中文标题】有没有办法覆盖 UITextView UIKeyInput 以便可以从超级视图输入文本?【英文标题】:Is there a way to override UITextView UIKeyInput so can enter text from superview? 【发布时间】:2014-04-25 01:29:34 【问题描述】:

我有一个视图 TextViewHolder,它有一个 UITextView 作为子视图。我想让TextViewHolder 实现UIKeyInput,它是三个附带的方法insertTexthasTextdeleteBackwards,这样我就可以在UITextView 中插入来自TextViewHolder 的文本(用于杂乱的设计目的),我还想保持可编辑UITextView 的功能(光标定位、复制粘贴、添加不同语言的能力)。是否可以在不继承 UITextView 的情况下完成此操作?

【问题讨论】:

你能再激励一下吗?我的意思是,UITextView 确实符合 UITextInput 和 UIKeyInput,这里需要解决什么问题? @matt - 试图将其融入我拥有的当前设计中,该设计通过 CoreText 使用自定义文本视图来输入文本。我想用 UITextView 替换那个视图。不过,在调查这一点时,我认为没有子类化就没有办法做到这一点。 【参考方案1】:

很遗憾,这不可能,需要继承 UITextView 并覆盖 insertTextdeleteBackward

【讨论】:

实际上由于 ios 错误而无法正常工作:forums.developer.apple.com/thread/7519

以上是关于有没有办法覆盖 UITextView UIKeyInput 以便可以从超级视图输入文本?的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法在不开始滚动的情况下显示 UITextView 的滚动指示器?

UITextView 开始编辑时,文字没有左上角对齐解决办法

iOS 5 - 有没有办法在 UITextView 中禁用自动填充但保留拼写检查(红色下划线)?

有没有办法让 iOS 的自动更正忽略 UITextView 中的单个单词或正则表达式?

有没有办法在 UILabel 中为 NSRange 获取 CGRects?

覆盖 UITextView 的 CMD + Z 键命令