Nice programing

프로그래밍 방식으로 UITextView 포커스를 어떻게 제공합니까?

nicepro 2020. 12. 13. 11:08
반응형

프로그래밍 방식으로 UITextView 포커스를 어떻게 제공합니까?


그래서 UITextView가있는 모달 뷰 컨트롤러를 가져오고 키보드가 자동으로 팝업되고 UITextView에 포커스가 있기를 원합니다.

다음을 수행하여이를 수행하는 방법을 찾았습니다.

textView.editable = YES;
textView.editable = NO;

이것은 나에게 단지 엉뚱한 것처럼 보입니다. 다른 방법이 있습니까?


UITextView에서 상속 하기 때문에 UIResponder(간접적으로에서 상속하고에서 UIScrollView상속 UIView다음에서 상속 함 UIResponder) -becomeFirstResponder텍스트 필드 에서 메서드를 호출 하여 첫 번째 응답자가되고 편집을 시작할 수 있습니다.

[textView becomeFirstResponder];

빠른:

textView.becomeFirstResponder()

그것은 다소 엉망인 것 같습니다.

'초점을 가짐'에 대한 Cocoa Touch 용어는 '첫 번째 응답자'이며 UITextViews는 첫 번째 응답자 일 때 키보드를 표시합니다. UITextView를 첫 번째 응답자로 만드는 몇 가지 기술을 생각할 수 있지만 가장 쉬운 방법은 뷰 컨트롤러의 viewWillAppear 또는 viewDidAppear 메서드에 있습니다.

-(void) viewWillAppear : (BOOL) 애니메이션
{

    [myTextView가 FirstResponder가 됨];

    [super viewWillAppear : animated];
}

[textView becomeFirstResponder];

ViewController를로드 할 때 특정 TextView에 포커스를 두려면 아래와 같이 ViewDidLoad 오버로드 함수에 textView.becomeFirstResponder ()를 배치 할 수 있습니다.

 override func viewDidLoad() {
    super.viewDidLoad()

textView.becomeFirstResponder()

}

나는 이것이 오류없이 작동한다는 것을 알았습니다.

참고 URL : https://stackoverflow.com/questions/987975/how-do-i-give-a-uitextview-focus-programmatically

반응형