으로 UITextField에서 선택된 텍스트의 범위를 가져옵니다. UITextInput 프로토콜의 selectedTextRange 및 beginOfDocument 속성을 사용하여이 작업을 수행했지만, 아래 게시물에서 방금 배웠던 것처럼 UITextField는 UITextInput 프로토콜을 iOS 5에서 사용할 수 있으므로 iOS 4.3에서 응용 프로그램이 충돌합니다. iOS 4.3에서 다른 방법이 필요합니다.NSRange가 iOS 4
UITextInput protocol usage for UITextField and UITextView to manage selection results in crash.
는 여기에 내가 (자기 제의 UITextField의 서브 클래스입니다) 지금 뭘하는지입니다 :
UITextRange *selectedTextRange = self.selectedTextRange;
NSUInteger location = [self offsetFromPosition:self.beginningOfDocument
toPosition:selectedTextRange.start];
NSUInteger length = [self offsetFromPosition:selectedTextRange.start
toPosition:selectedTextRange.end];
NSRange selectedRange = NSMakeRange(location, length);
답변 해 주셔서 감사합니다. 우리는 실제로 iOS 4.3의 기능을 종료했습니다. 그것은 가장 깨끗한 해결책으로 밝혀졌습니다. –