1

重複の可能性:
ボタン付きのテキストをコピーして貼り付ける

iPhone で画面を切り替えることなく、コードでクリップボードから過去のものにしたいのですが、何か考えはありますか?

私はこれらの操作をこれらとは異なるコードで実行したいと考えています。

ここに画像の説明を入力

これらが可能かどうか、またはその場合にiOSにアクセスするかどうかを尋ねていますか?

4

2 に答える 2

2

[UIPasteboard generalPasteboard]UIPasteboardユーザーの現在のクリップボードの内容を悔い改めるインスタンスを提供します。のように使う

- (IBAction)pasteButtonPressed {
    self.myTextView.text = [[UIPasteboard generalPasteboard] string];
}
于 2012-11-07T12:58:16.690 に答える
0

UIResponderStandardEditActions非公式プロトコルは、その目的のために設計されたメソッドを宣言しますpaste:UITextView(他のサブクラスと共にUIResponder) この非公式プロトコルに準拠しているため、このメソッドに応答します。

これには、貼り付け操作のすべての側面を管理できるという利点があります。特に、挿入ポイントの位置にテキストを貼り付けたり、従来の貼り付け操作のように、選択したテキストがあれば置き換えたりします。


もう 1 つの解決策は、UIPasteboard自分自身に含まれるテキストをテキスト ビューに挿入することです。ただし、その場合はselectedTextRange(選択したテキストまたは挿入ポイント) を置き換えて、の内容全体を置き換えないようにしてUITextViewください。

この目的のために、正式な protocolをUITextView実装するUITextInputUITextViewという事実を使用します。このプロトコルは、テキスト入力を管理するオブジェクト ( 、UITextFieldなど)を処理するために必要なすべてのメソッドを宣言します。特にreplaceRange:withText:selectedTextRange:

NSString* pasteboardText = [[UIPasteboard generalPasteboard] string];
[self.myTextView replaceRange:self.myTextView.selectedTextRange withText:pasteboardText];
于 2012-11-07T13:12:38.260 に答える