Estoy buscando un ejemplo claro de cómo copiar texto al portapapeles de iOS que luego se puede usar / pegar en otras aplicaciones.
El beneficio de esta función es que el texto se puede copiar rápidamente, sin las funciones de resaltado de texto estándar de la copia de texto tradicional.
Supongo que las clases clave están en UIPasteboard
, pero no puedo encontrar las áreas relevantes en el ejemplo de código que proporcionan .
ios
swift
cocoa-touch
copy
uipasteboard
Garry Law
fuente
fuente
Respuestas:
Si todo lo que desea es texto sin formato, puede usar la
string
propiedad . Es legible y escribible:(Al leer desde el portapapeles, la documentación de UIPasteboard también sugiere que desee verificar primero
hasStrings
, "para evitar que el sistema intente buscar datos innecesariamente antes de que sea necesario o cuando los datos no estén presentes", como cuando se usa Handoff .)fuente
UIPasteboard.general.string
también funciona en swift 4.xComo la copia y el pegado generalmente se realizan en pares, esta es una respuesta complementaria a @jtbandes, una respuesta buena y concisa. Originalmente vine aquí buscando cómo pegar.
iOS lo hace fácil porque el tablero general se puede usar como una variable. Solo ponte y ponte
UIPasteboard.general.string
.Aquí hay un ejemplo que muestra que ambos se usan con un
UITextField
:Copiar
Pegar
Tenga en cuenta que la cadena de cartón es Opcional, por lo que primero debe desenvolverse.
fuente
myTextField.font
. Puede guardar esa información por separado y aplicarla en otro lugar.UIPasteboard
no es compatible con el estilo. Solo puede manejar el estilo dentro de su propia aplicación.Copiar texto de la aplicación al portapapeles:
fuente
SWIFT 4
fuente