Szukam czystego przykładu, jak skopiować tekst do schowka na iOS, którego można następnie użyć / wkleić w innych aplikacjach.
Zaletą tej funkcji jest to, że tekst można szybko skopiować, bez standardowych funkcji podświetlania tekstu tradycyjnego kopiowania tekstu.
Zakładam, że są kluczowe klasy UIPasteboard
, ale nie mogę znaleźć odpowiednich obszarów w podanym przez nich przykładzie kodu .
ios
swift
cocoa-touch
copy
uipasteboard
Prawo Garry'ego
źródło
źródło
Odpowiedzi:
Jeśli wszystko, czego chcesz, to zwykły tekst, możesz po prostu użyć
string
właściwości . Jest zarówno czytelny, jak i zapisywalny:(Podczas czytania ze schowka dokumentacja UIPasteboard sugeruje również, że możesz najpierw sprawdzić
hasStrings
, „aby uniknąć niepotrzebnej próby pobrania danych przez system, zanim będzie on potrzebny lub gdy dane mogą nie być obecne”, na przykład podczas korzystania z funkcji Handoff .)źródło
UIPasteboard.general.string
działa również w wersji szybkiej 4.xPonieważ kopiowanie i wklejanie odbywa się zwykle parami, jest to dodatkowa odpowiedź na dobrą, zwięzłą odpowiedź @jtbandes. Pierwotnie przybyłem tutaj, szukając sposobu wklejenia.
iOS ułatwia to, ponieważ ogólny karton może być używany jak zmienna. Po prostu weź i ustaw
UIPasteboard.general.string
.Oto przykład pokazujący, że oba są używane z
UITextField
:Kopiuj
Pasta
Zauważ, że łańcuch kartonu jest Opcjonalny, więc najpierw należy go rozpakować.
źródło
myTextField.font
. Możesz zapisać te informacje osobno i zastosować je gdzie indziej.UIPasteboard
nie obsługuje stylizacji. Stylizację możesz obsługiwać tylko we własnej aplikacji.Kopiowanie tekstu z aplikacji do schowka:
źródło
SWIFT 4
źródło