UITextView
에 터치 이벤트 처리 기능을 제공하지 않습니다. 내가 개발중인 프로젝트에는 읽을 수 있고 편집 가능한 노트가 포함되어 있으며 UITextView
을 사용하고 있습니다. 이 문제로 나를 도와주세요 - 내 프로젝트에 터치 이벤트를 어떻게받을 수 있습니까?UITextView에서 터치 이벤트 가져 오기
3
A
답변
0
같은 논리를 사용하여 문제가 해결되었습니다.
는읽는 동안 우리는 텍스트 뷰를 통해 사용자 정의보기를 추가하고
(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
작업 그러나 우리가 편집 모드에있을 때 그것은 불가능합니다. 어떤 방식으로 내 요구 사항은 읽기 전용 모드에서만 가능합니다.
모든 문제를 해결해 주셔서 감사합니다.
4
Apple 설명서에 따르면 UITextView에 대한 대리인을 설정하고 UITextViewDelegate를 구현할 수 있습니다.
특히, 당신은 UITextView가 textViewShouldBeginEditing를 구현하여 감동 것을 확인할 수 있습니다.
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView;
이벤트를 잡으려면 UITextView에서 대리자 속성을 설정해야합니다.
0
그냥 케빈의 대답에 덧붙이고 싶었습니다. UITextView는 UIScrollView에서 상속받습니다. UIScrollViewDelegate 프로토콜에서 선언 된 모든 이벤트를 텍스트보기로 가져와야합니다.
내가 가지고 :-(void)scrollViewDidScroll:(UIScrollView *)scrollView
내가 UITextView의 대리인으로 내 클래스를 선언 할 때.
1
사용자 정의 textview를 작성하고 사용자 정의 클래스 내에 터치 이벤트를 제공하십시오. 해당 사용자 지정 클래스의 대리자에 메서드를 만들 수 있습니다.
응답 주셔서 감사합니다 - (BOOL) textViewShouldBeginEditing : (UITextView *) textView; 이 메소드는 [textView seteditable : yes]; 하지만 일부 텍스트 배경의 색상을 변경하려면 편집을 비활성화해야합니다. ui-textview에서 특정 위치에 이미지를 삽입하는 방법을 알려주세요. 가능한 경우 여기에 신뢰할 수있는 코드를 게시하십시오 미리 감사드립니다. – Madhu
배경을 변경하기 위해 편집을 비활성화 할 필요는 없습니다! 또한 사용자 정의 UIView에서 UITextView를 래핑하고 해당 이벤트를 터치 할 수 있습니다 (필요에 따라 델리게이트 사용). MKMapView에서 터치 이벤트를 쉽게 잡으려고이 작업을 수행합니다. 이는 훌륭한 접근 방식이며 UITextViewDelegate 메서드를 손상시키지 않습니다. –