IOS textView委托

时间:2015-11-25 07:21:22

标签: ios objective-c uitextview uitextviewdelegate

我创建了一个UITextView *mytextview。我希望在UIKeyboardWillShowNotification委托之前点击textview时获取活动。

现在,当我点击textview时,会打电话给UIKeyboardWillShowNotification。在那之后,它会打电话- (void)textViewDidBeginEditing:(UITextView *)textView,这不好!

我想在致电mytextview delegate

之前调用UIKeyboardWillShowNotification

如何解决此问题

2 个答案:

答案 0 :(得分:0)

使用textViewShouldBeginEditing提供的UITextViewDelegate,在其中调用您的委托方法,并从此方法返回YES以允许用户编辑文本。

- (BOOL)textViewShouldBeginEditing:(UITextView *)textView
{
    [yourDelegate yourMethod:textView];
    return YES;
}

答案 1 :(得分:0)

事件执行的顺序是

  1. UIKeyboardWillShowNotification
  2. textViewDidBeginEditing
  3. 现在根据我们的要求,我在KeyBoardWillShow时调用Fire On Notification。

    - (void)viewDidLoad {
            [super viewDidLoad];
            [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textViewDidBeginEditing:) name:UIKeyboardWillShowNotification object:nil];
    
        }
    
        - (void)textViewDidBeginEditing:(UITextView *)textView {
            NSLog(@"textViewDidBeginEditing");
        }
    

    在选择器中我传递了在UIKeyBoardWillShown之后调用的相同函数,也可以在UIKeyBoardShow之前设置你想要做的自己的函数

    这是我的代码

    version