programing

"완료 / 돌아 가기"버튼을 눌렀을 때 텍스트 상자 키보드를 숨기는 방법 Xcode 4.2

nasanasas 2020. 12. 28. 08:16
반응형

"완료 / 돌아 가기"버튼을 눌렀을 때 텍스트 상자 키보드를 숨기는 방법 Xcode 4.2


Interface Builder에서 텍스트 필드를 만들었습니다. "Return Key"를 완료로 설정했습니다. 이것은 한 줄만 입력하는 것이므로 여러 줄이 필요하지 않습니다.

사용자가 완료 버튼을 탭할 때 가상 키보드를 숨기려면 어떻게해야합니까?


델리게이트 메서드를 구현 UITextFieldDelegate한 다음 :

- (void)viewDidLoad {
    [super viewDidLoad];
    self.yourIBtextField.delegate = self;
}

- (BOOL)textFieldShouldReturn:(UITextField *)textField {
    [textField resignFirstResponder];
    return NO;
}

UITextView에는 사용자가 리턴 키를 누를 때 호출되는 메소드가 없습니다.

그래도 이렇게하려면 UITextViewDelegate의 textView : shouldChangeTextInRange : replacementText : 메서드를 구현하고 대체 텍스트가 \ n인지 확인하고 키보드를 숨 깁니다.

다른 방법이 있을지 모르지만 나는 전혀 알지 못합니다.

UITextViewDelegate 프로토콜에 대한 지원을 선언했는지 확인하십시오.

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

    if([text isEqualToString:@"\n"]) {
        [textView resignFirstResponder];
        return NO;
    }
    return YES;
}

많은 도움이되기를 바랍니다.


다음 메소드로 UIViewController에 카테고리 만들기

- (void)hideKeyboard
{
    [[UIApplication sharedApplication] sendAction:@selector(resignFirstResponder)
                                               to:nil
                                             from:nil
                                         forEvent:nil];
}

참조 URL : https://stackoverflow.com/questions/10965357/how-to-hide-textbox-keyboard-when-done-return-button-is-pressed-xcode-4-2

반응형