Ich suche nach einem sauberen Beispiel für das Kopieren von Text in die iOS-Zwischenablage, der dann in anderen Apps verwendet / eingefügt werden kann.
Der Vorteil dieser Funktion besteht darin, dass der Text schnell kopiert werden kann, ohne dass die Standardfunktionen zum Hervorheben von Text beim herkömmlichen Kopieren von Text verwendet werden.
Ich gehe davon aus, dass sich die Schlüsselklassen befinden UIPasteboard
, kann aber die relevanten Bereiche in dem von ihnen bereitgestellten Codebeispiel nicht finden .
ios
swift
cocoa-touch
copy
uipasteboard
Garry Law
quelle
quelle
Antworten:
Wenn Sie nur einfachen Text möchten, können Sie einfach die
string
Eigenschaft verwenden . Es ist sowohl lesbar als auch beschreibbar:(Wenn Sie aus der Zwischenablage lesen , wird in der UIPasteboard-Dokumentation auch empfohlen , zunächst zu überprüfen
hasStrings
, "um zu vermeiden, dass das System unnötig versucht, Daten abzurufen, bevor sie benötigt werden oder wenn die Daten möglicherweise nicht vorhanden sind", z. B. bei Verwendung von Handoff .)quelle
UIPasteboard.general.string
funktioniert auch in Swift 4.xDa das Kopieren und Einfügen normalerweise paarweise erfolgt, ist dies eine ergänzende Antwort auf @jtbandes gute, präzise Antwort. Ich bin ursprünglich hierher gekommen, um zu sehen, wie man einfügt.
iOS macht dies einfach, da das allgemeine Pasteboard wie eine Variable verwendet werden kann. Einfach holen und einstellen
UIPasteboard.general.string
.Hier ist ein Beispiel, das zeigt, wie beide mit einem verwendet werden
UITextField
:Kopieren
Einfügen
Beachten Sie, dass die Pappzeichenfolge optional ist und daher zuerst ausgepackt werden muss.
quelle
myTextField.font
. Sie können diese Informationen separat speichern und an einer anderen Stelle anwenden.UIPasteboard
unterstützt kein Styling. Sie können das Styling nur in Ihrer eigenen App ausführen.Kopieren von Text aus der App in die Zwischenablage:
quelle
SWIFT 4
quelle