2014-07-10 14 views
88

in die Zwischenablage/Pasteboard kopieren Ich suche nach einem sauberen Beispiel, wie man Text in die Zwischenablage von iOS kopiert, die dann in anderen Anwendungen verwendet/eingefügt werden kann.Wie man Text mit Swift

Der Vorteil dieser Funktion ist, dass der Text schnell kopiert werden kann, ohne die standardmäßigen Texthervorhebungsfunktionen des traditionellen Textkopierens.

Ich gehe davon aus, dass die wichtigsten Klassen in UIPasteboard sind, kann aber nicht die relevanten Bereiche im Codebeispiel finden sie liefern: https://developer.apple.com/documentation/uikit/uipasteboard

+0

Objective-C in die Zwischenablage kopieren: http://hayageek.com/uipasteboard-example-read-write-share/ – Iducool

Antwort

217

Wenn alles, was Sie wollen Klartext ist, können Sie nur verwenden, um die Eigenschaft string :

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

in Swift 3:

UIPasteboard.general.string = "Hello world" 
+0

Dies kann, adaequat Aber kommt es nicht vor, dass der Benutzer Bilder oder Dateien in seinem kopierten Inhalt hat? – victor

19

Da das Kopieren und Einfügen in der Regel paarweise durchgeführt wird, ist diese ergänzende Antwort auf @jtbandes gute, knappe Antwort. Ich bin ursprünglich hierher gekommen, um zu schauen, wie man kleben kann.

iOS macht dies einfach, weil die allgemeine Pappe wie eine Variable verwendet werden kann. Einfach holen und setzen UIPasteboard.general.string.

Hier ist ein Beispiel dafür, beide mit einem UITextField verwendet:

Copy

UIPasteboard.general.string = myTextField.text 

Paste

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

Beachten Sie, dass die Pappe String ist optional, so dass es muss zuerst ausgepackt werden.

3

Für Swift 3 Kopieren von App

let pasteboard = UIPasteboard.general 
    pasteboard.string = employee.phone_number