web-dev-qa-db-ja.com

Swiftを使用してテキストをクリップボード/ペーストボードにコピーする方法

私は、テキストをiOSクリップボードにコピーして、他のアプリで使用/貼り付けできる方法のわかりやすい例を探しています。

この機能の利点は、従来のテキストコピーの標準的なテキストハイライト機能を使用せずに、テキストをすばやくコピーできることです。

キークラスはUIPasteboardにあると仮定していますが、関連する領域は 提供するコード例 にありません。

140
Garry Law

必要なものがすべてプレーンテキストの場合は、stringプロパティを使用できます。

UIPasteboard.generalPasteboard().string = "Hello world"

Swift 3:

UIPasteboard.general.string = "Hello world"
344
jtbandes

通常、コピーと貼り付けはペアで行われるため、これは@jtbandesの適切で簡潔な回答に対する補足的な回答です。私はもともとここにペースト方法を探しに来ました。

一般的なペーストボードは変数のように使用できるため、iOSはこれを簡単にします。 UIPasteboard.general.stringを取得して設定するだけです。

以下は、両方がUITextFieldで使用されていることを示す例です。

コピー

UIPasteboard.general.string = myTextField.text

貼り付け

if let myString = UIPasteboard.general.string {
    myTextField.insertText(myString)
}

ペーストボード文字列はオプションであるため、最初に展開する必要があります。

41
Suragch

アプリからクリップボードへのテキストのコピー:

let pasteboard = UIPasteboard.general
pasteboard.string = employee.phoneNumber
6
Raj Joshi

Swift 4

UIPasteboard.general.string = "TEXT"
3
Álvaro Agüero