iOS文本编辑器方法的奇特经历

奇葩的兼容性问题

Tom 创建于 2017-8-8

最新发表:


浅谈面向对象的SDK的结果处理方式

返回值、代理还是其他方法

你可能感兴趣的内容:


体验XCode9中的Swift

Swift与OC混合编译


iOS8的列表控件存在隐性bug

iOS11出来,iOS8还要继续维护?

iOS文本编辑控件

iOS文本编辑控件,主要有两种:UITextView和UITextField。为UITextView添加灰色提示文字(Placeholder),做输入检测的时候,在iOS9.3出现的一种情况:

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
	...
}

这个方法在iOS9.3,只要键盘上点了联想文字,就不会触发以上代理方法,在iOS10则没有这个问题。检测不到就会发生以下情况:

- (void)textViewDidChange:(UITextView *)textView {
	...
}

于是添加多一条代理实现,问题得到解决。