Estou procurando um exemplo limpo de como copiar texto para a área de transferência do iOS que pode ser usado / colado em outros aplicativos.
O benefício dessa função é que o texto pode ser copiado rapidamente, sem que o texto padrão destaque as funções da cópia tradicional de texto.
Estou assumindo que as classes principais estão UIPasteboard
, mas não conseguimos encontrar as áreas relevantes no exemplo de código que elas fornecem .
ios
swift
cocoa-touch
copy
uipasteboard
Garry Law
fonte
fonte
Respostas:
Se tudo que você quer é texto simples, você pode simplesmente usar a
string
propriedade . É legível e gravável:(Ao ler a partir da área de transferência, a documentação do UIPasteboard também sugere que você primeiro verifique
hasStrings
: "para evitar que o sistema tente desnecessariamente buscar dados antes que eles sejam necessários ou quando os dados não estejam presentes", como ao usar Handoff .)fonte
UIPasteboard.general.string
também trabalha no swift 4.xComo copiar e colar geralmente é feito em pares, essa é uma resposta complementar a uma resposta concisa e boa de @jtbandes. Eu originalmente vim aqui procurando colar.
O iOS facilita isso porque a área de transferência geral pode ser usada como uma variável. Basta pegar e definir
UIPasteboard.general.string
.Aqui está um exemplo mostrando os dois sendo usados com um
UITextField
:cópia de
Colar
Observe que a string da área de transferência é opcional, portanto, ela deve ser desembrulhada primeiro.
fonte
myTextField.font
. Você pode salvar essas informações separadamente e aplicá-las em outro lugar.UIPasteboard
não suporta estilo. Você só pode lidar com o estilo em seu próprio aplicativo.Copiando texto do aplicativo para a área de transferência:
fonte
SWIFT 4
fonte