文本的编程更改未调用UITextView UITextViewTextDidChangeNotification

Nik*_*a P 2 iphone input uitextview ios ios8

我在自定义UITextView的初始化中称其为:

[[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(textChanged:)
                                                 name:UITextViewTextDidChangeNotification
                                               object:self];
Run Code Online (Sandbox Code Playgroud)

textChanged编程方式设置时未调用该方法textView.text = @""

对我做错的任何想法吗?

小智 5

您不应该传递self给最后一个参数,该参数是notificationSender,这意味着您只想观察发出的通知self

观察者是这样的:

[[NSNotificationCenter defaultCenter] addObserver:self
                                      selector:@selector(textChanged:)
                                      name:UITextViewTextDidChangeNotification
                                      object:nil];
Run Code Online (Sandbox Code Playgroud)

希望能有所帮助。