未调用textViewDidEndEditing

Kir*_*ari 6 iphone uitextview uitextviewdelegate ios

我是iOS开发的新手.

我已经像这样编写了头文件

@interface TextView : UITextView <UITextViewDelegate, UIPopoverControllerDelegate>
Run Code Online (Sandbox Code Playgroud)

在TextView.h中.

实现文件代码如下:

- (BOOL)textViewShouldBeginEditing:(TextView *)textView
{
    ZWLog(@"called should begin edit");
    return YES;
}

- (void)textViewDidBeginEditing:(TextView *)textView
{
    ZWLog(@"called did begin edit");
}

- (BOOL)textViewShouldEndEditing:(TextView *)textView
{
    ZWLog(@"called should end editing");
    return YES;
}

- (void)textViewDidEndEditing:(TextView *)textView
{
    ZWLog(@"view did end edit");
    return YES;
}

- (BOOL)textView:(TextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
    //my own code
    return YES;
}

- (void)textViewDidChange:(TextView *)textView
{
   //my own code
}
Run Code Online (Sandbox Code Playgroud)

当我开始输入一个角色时UITextView,我得到了回复

  • textViewShouldBeginEditing.
  • textViewDidBeginEditing.
  • shouldChangeTextInRange.
  • textViewDidChange.

但我没有得到任何回应textViewDidEndEditing或textViewShouldEndEditing.你知道为什么这些没被叫出来吗?

谢谢你的回答.

Nic*_*ico 9

当键盘消失时,当textfield重新启动其第一个响应者时,将调用textViewDidEndEditing.