IOS:UITextInput 上的 Tokenizer 永远不会被调用

Posted

技术标签:

【中文标题】IOS:UITextInput 上的 Tokenizer 永远不会被调用【英文标题】:IOS: Tokenizer on UITextInput is never called 【发布时间】:2014-03-10 04:30:40 【问题描述】:

我有一个 UITextInput 实现,有一个小问题似乎正在破坏我的能力,但 AutoCapitalization 很好:

tokenizer 属性永远不会被调用(即使在调用 becomeFirstResponder 之后),所以我的 Custom Tokenizer 永远不会被实例化或使用。

- (id<UITextInputTokenizer>)tokenizer 
NSLog(@"%s", __func__);
if (tokenizer == nil) 
    tokenizer = [MyCustomTokenizer alloc] initWithTextInput:self];

return tokenizer;

有人知道为什么会这样吗?

可能有帮助的更多信息:UITextInput 实现位于 UICollectionView 的子类上

【问题讨论】:

【参考方案1】:

想通了。当我应该返回长度为 0 的选择时,我为 selectedTextRange 返回 Nil。

【讨论】:

以上是关于IOS:UITextInput 上的 Tokenizer 永远不会被调用的主要内容,如果未能解决你的问题,请参考以下文章

何时调用 -[UITextInput selectionRectsForRange:]?

UITextInput 的 Tokenizer,它是做啥用的?

UITextInput:重置多阶段输入建议

如何对 NSUndoManager+UITextInput 的击键进行分组

自定义 UITextInput 实现不显示多阶段输入建议

我们如何实现 selectionRectsForRange: 从 UITextInput 协议?