1
black 2014-08-08 18:02:10 +08:00
把delegate指向了自己,不太好吧
|
2
androidBrant OP @black assign的,我又没有引用他,不会内存泄漏啊
|
3
railgun 2014-08-08 18:15:17 +08:00
问题是真正想用这个协议的人就用不了了啊
改用通知吧 |
5
zhigang1992 2014-08-08 19:18:56 +08:00
用通知,
UIKIT_EXTERN NSString * const UITextViewTextDidBeginEditingNotification; UIKIT_EXTERN NSString * const UITextViewTextDidChangeNotification; UIKIT_EXTERN NSString * const UITextViewTextDidEndEditingNotification; 但是问题是不能在Category中很方便的override dealloc来取消通知~~~ http://www.merowing.info/2012/03/automatic-removal-of-nsnotificationcenter-or-kvo-observers/#.U-Sx64CSxhY just my two cents |
6
zhigang1992 2014-08-08 19:23:40 +08:00
或者:
把setDelegate方法重写了,把值写到一个runTime的property里面~ 然后在category里面用setValueForKeyPath来设置delegate。 最后在所有的method里面调对应property的method |
7
hoogle 2014-08-09 02:20:29 +08:00 via iPhone
这个功能的实现 考虑用继承比Category合适。
|