UITextView: 響應鍵盤的 return 事件

weixin_34126215發表於2014-06-20

UITextFieldDelegate代理裡面響應return鍵的回撥:textFieldShouldReturn:。
但是 UITextView的代理UITextViewDelegate 裡面並沒有這樣的回撥。
但是有別的方法可以實現:
UITextViewDelegate裡面有這樣一個代理函式:

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text

 

這個函式的最後一個引數text代表你每次輸入的的那個字,所以:

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{
    if ([text isEqualToString:@"\n"]){ //判斷輸入的字是否是回車,即按下return
        //在這裡做你響應return鍵的程式碼
        return NO; //這裡返回NO,就代表return鍵值失效,即頁面上按下return,不會出現換行,如果為yes,則輸入頁面會換行
    }

    return YES;
}

 

相關文章