Jon*_*an. 5 iphone delegates objective-c ipad ios
我有一个UITextView的子类,我想让它成为自己的委托.这样我就可以覆盖该textView:shouldChangeTextInRange:replacementText:
方法,并防止输入连续的空格.
在[SATextView awakeFromNib]
(SATextView是我的UITextView的子类)中,我做到了[self setDelegate:self];
.当我按下textview开始编辑时,所有内容都冻结并最终停止,并且该回溯显示存在无限循环.
如果我实现所有委托方法,只有一个或没有,这没关系.如果这些方法是空的也没关系.
为什么会导致无限循环?只有使用UITextView(其他对象可以子类化并将委托设置为self,并且它不会出现此问题),似乎只会发生这种情况.我怎么能阻止它?或者是否有更好的方法让这个子类不能有连续的空格,
一个想法...您可以创建一个委托类,充当真正委托和 UITextView 之间的中间人(因为您可能需要在一段时间后设置委托)。因此,这个新类将实现委托协议,但它也将具有其自己的委托的属性,以便您可以转发 textView:shouldChangeTextInRange:replacementText:,并且仍然可以编辑 middleMan 类中的空格。
归档时间: |
|
查看次数: |
865 次 |
最近记录: |