2012-11-07 5 views
1

가능한 중복 : 내가 아이폰의 화면을 전환 밖으로 코드에 의해 클립 보드에서 과거를 만들고 싶어
Copy and paste text with buttons붙여 넣기

, 어떤 사람이 어떤 생각을 가지고?

이러한 작업을 이러한 코드가 아닌 코드로 만들고 싶습니다.

enter image description here

음이 가능한 경우 요청 또는 음이 경우 아이폰 OS에 접근?

+1

http://stackoverflow.com/questions/12150586/copy-and-paste-text-with-buttons?rq=1 –

답변

2

[UIPasteboard generalPasteboard]은 사용자에게 현재 클립 보드 콘텐츠를 회신하는 UIPasteboard의 인스턴스를 제공합니다. UIResponderStandardEditActions 비공식 프로토콜은 그 목적을 위해 설계되었습니다 paste: 방법을 선언

- (IBAction)pasteButtonPressed { 
    self.myTextView.text = [[UIPasteboard generalPasteboard] string]; 
} 
0

처럼 사용합니다. UITextView (다른 UIResponder 서브 클래스와 함께)은이 비공식 프로토콜을 준수하므로이 메소드에 응답합니다.

붙여 넣기 작업의 모든 측면을 관리 할 수있는 이점이 있습니다. 특히 붙여 넣기 작업과 마찬가지로 삽입 지점의 위치에 텍스트를 붙여 넣거나 선택한 텍스트를 바꿉니다.


다른 해결책은 텍스트보기에서 UIPasteboard에 포함 된 텍스트를 직접 삽입하는 것입니다. 그러나이 경우 selectedTextRange (선택한 텍스트 또는 삽입 지점)을 바꾸고 UITextView의 전체 내용을 바꾸지 않아야합니다.

이 목적

UITextView 텍스트 입력을 관리 개체 (같은 UITextView, UITextField 등) 특히 replaceRange:withText:selectedTextRange을 처리하는 데 필요한 모든 방법을 선언하는 UITextInput 공식 프로토콜을 구현한다는 사실을 사용
NSString* pasteboardText = [[UIPasteboard generalPasteboard] string]; 
[self.myTextView replaceRange:self.myTextView.selectedTextRange withText:pasteboardText];