Copiar y pegar texto en el simulador de iOS

107

Esto debe estar documentado en alguna parte, pero no puedo encontrarlo.

En mi aplicación que usa el simulador de iPad, hay un campo de texto en el que quiero que el usuario pegue texto. En el mundo real, el usuario copiará el texto de la dirección de Safari en el campo de texto. Pero estoy tratando de hacer eso en el simulador de ios ipad, pero solo con resultados parciales.

Después de volver a EJECUTAR la aplicación, puedo pegar texto inmediatamente en el campo de texto con el Edit|Paste Textmenú de Mac o con Shift-Command-V, (pero no solo Edit|Paste, pero está bien). La necesidad del Cambio es molesta, pero puedo vivir con ella.

Pero luego, si intento copiar otra URL en la Mac y luego otra vez, Edit|Paste Texto incluso usar la Pasteburbuja en el simulador, no obtengo el texto nuevo, sino el texto original.

¿Es eso común? ¿Es una característica del simulador que no está conectado en vivo al portapapeles en la computadora host?

zerowords
fuente
1
Hágalo en un dispositivo. No confíe en cómo funciona el simulador.
Jeremy1026

Respuestas:

100

Tenga cuidado de no confundir el portapapeles del mac con el del simulador. Ellos no son los mismos.

El simulador está simulando un dispositivo iOS, con su propio portapapeles de iOS que las aplicaciones que se ejecutan en ese dispositivo (simulador) usan a través de los elementos de IU de iOS pup-up select-all / copy / paste.

Completamente separado de eso: tu Mac tiene su propio portapapeles y contenido. El programa Simulator que se ejecuta en su mac proporciona el elemento de menú Editar> Pegar texto. El programa implementa ese elemento del menú accediendo al portapapeles de tu Mac y escribe el texto en el simulador como si el usuario usara el teclado. No se accede al portapapeles de iOS ni se ve afectado por las funciones del menú Editar de la aplicación Simulator.

Actualización: a partir de Xcode 6, debe elegir elEdit > Paste elemento menú en el simulador de iOS (esto transfiere los datos entre el portapapeles de Mac y el portapapeles de iOS), luego toque el campo en el simulador y toque la burbuja "Pegar".

En su pregunta, no especifica de qué "Safari" está copiando la URL. Podría ser la aplicación mac safari o la aplicación safari del simulador . Hacer una copia del programa mac safari va al portapapeles de mac, hacer una copia de la aplicación safari va al portapapeles de iOS dentro del simulador.

Creo que sus problemas provienen de confundir los dos, pensar que hay un portapapeles que todo se comparte.

Bill Patterson
fuente
12
En Xcode 9 (tal vez antes) hay un elemento de menú debajo de editar "Sincronizar automáticamente el tablero". Creo que mantendrá el portapapeles de tu Mac y el portapapeles del simulador sincronizados, por lo que siempre son los mismos.
Chris Slade
111

Descubrí que incluso con Editar> Sincronizar automáticamente el tablero marcado, la función no funcionaba.

Sin embargo, simplemente desmarcar y luego volver a marcar esta opción solucionó la función.

Espero que funcione para alguien.

endurecer
fuente
8
Esto me funcionó para volver a habilitar el uso compartido del portapapeles después de actualizar a Xcode 10.1.
Jon Steinmetz
2
Sí, esto está funcionando. Sin embargo, solo por una vez. Tuve que repetir los mismos pasos la próxima vez para que funcionara. De todos modos, feliz de que haya alguna opción :)
sunil
1
¡Trabajó para mi! Gracias por tomarse el tiempo para publicar.
Andi
67

Copie el texto en la mac, luego haga clic en el campo de texto en el simulador y presione

Shift Command V

Shane
fuente
1
¿Terminó siendo una combinación para mí? Súper raro. Tuve que Pegar en la barra de menú y luego hacer esto para obtener la pasta.
Brendan
Parece que este enfoque funciona a menudo, pero no todo el tiempo. En mi caso, el método de trabajo 100% es Cmd + C algo de texto, luego copiarlo con el menú contextual del mouse, luego en Simulator Cmd + V, Cmd + Shift + V, pegar a través del menú. Extraño pero funciona ...
brigadir
14

Haga clic en la opción "Sincronizar automáticamente la mesa de trabajo" en la opción de edición del Simulador.

ingrese la descripción de la imagen aquí

Chathurka
fuente
4
Tuve que desmarcar eso para que mi pizarra funcione, ¡pero estoy feliz de poder copiar / pegar nuevamente!
Stuart P.
2
hmmm no parece funcionar a partir de os x 10.13.6 y xcode 10.1, a menos que esté haciendo algo más mal con mi configuración
Daniel Lizik
¡Gorra sin héroe!
Teofilo Israel Vizcaino Rodrig
Todas las demás respuestas sobre solo cmd + c - cmd + v deben eliminarse. gracias
Zaporozhchenko Oleksandr
12

Lo que funcionó para mí es esto.

1) copiar texto de Mac

2) En el simulador, edite-> pegue o Command V (creo que esto copia el texto del portapapeles de mac al portapapeles del simulador de iOS).

3) Resalte el campo de texto en el simulador y luego haga comando + Shift + V.

Rajashekar
fuente
9

Xcode 10.0+ :

Desactivar la sincronización automática de la mesa de trabajo y volver a activarla resolvió el problema.

Puede que tengas que hacerlo varias veces. A veces lleva un tiempo activarlo por alguna razón.

(Editar -> Sincronización automática de la mesa de trabajo)

Kirill Kudaev
fuente
8

Actualicé a os x 10.13.6 y xcode 10.1 y hay un menú agregado en edit

haga clic en y get pasteboardluego podrá pegar a través de la información sobre herramientas de pegar en el simulador

Daniel Lizik
fuente
3
Tuve que hacer clic Send Pasteboardpara pegar en el simulador. Get Pasteboardhizo la acción inversa, llevó el portapapeles de iOS al portapapeles de Mac.
qwertzguy
1
esta es ahora la respuesta correcta, excepto que, como señala qwertzguy, lo tiene al revés
evanflash
5

Me sucedió algo similar y encontré una solución extraña, puede ayudar a cualquier otra persona que pueda encontrar el mismo problema. Pruebe los siguientes pasos:

  1. Deshabilite y luego vuelva a habilitar la Automatically Sync Pasteboardopción, se encuentra debajo deEdit menú del Simulador
  2. Copia el texto que quieras de tu Mac
  3. Pegue el texto nuevamente en su Mac en un editor de texto como Atom o incluso en la barra de direcciones de su navegador
  4. Seleccione todo el texto Cmd+Ay luego corte / copie Cmd+X/Cmd+C
  5. Ahora debería poder pegar el texto en el simulador
Mansur76
fuente
2

A veces es muy difícil escribir URL largas en el simulador de iOS. Debería haber alguna forma de copiar la URL de Max OS al campo de texto de iOS. Así es como puede hacerlo:

  • Copiar texto de Mac
  • Abra el simulador y haga clic en un campo de texto donde desea pegar el texto
  • Ahora, en el menú del Simulador, haga clic en Edit->Paste Text

y eso es. El texto del búfer de copia de Mac OS debería estar ahora en el campo de texto del simulador de iOS.

Adil Malik
fuente
2

En un nuevo emulador, no tengo la opción de "pegar" y la sincronización no funciona para el simulador. Parece que en el simulador DEBE copiar algo en el portapapeles interno antes de que la sincronización funcione.

Eliram
fuente
¡Esto salvó mi trasero! Xcode 10.2 recién instalado, nuevo simulador, nada funcionó. Luego copié un poquito de código y listo, ¡obtuve el menú de pegar! ¡¡¡Gracias!!!
David H
1

Tres pasos: (El punto clave es asegurarse de que el menú de ayuda "Pegar" se mantenga visible cuando use "⌘ + V" ).

  1. asegúrese de seleccionar el punto que desea pegar en el simulador, y se mostrará el menú de edición con "Pegar" .
  2. use el teclado en mac, " ⌘ + V ", para pegar el texto en el portapapeles del simulador.
  3. haga clic en "Pegar" en editMenu que se muestra arriba, para pegar el texto en el campo de texto del simulador.

ingrese la descripción de la imagen aquí

JerryZhou
fuente
0

a veces solo necesita seleccionar Hardware -> restablecer contenido y configuraciones en el menú del simulador. entonces todo funciona automáticamente tan fácil y transparente como trabajar en MacOS con otras aplicaciones

Nikolay Shubenkov
fuente
0

Ninguna de estas soluciones funcionó para mí. Estoy usando Simulator 11.4. Y después de probar cada uno de estos, me di cuenta de que todo lo que tenía que hacer era copiar algo en mi Mac usando Command + C, y luego en el campo de texto del simulador, simplemente mantén presionado el clic del mouse durante uno o dos segundos adicionales, y el menú de pegar apareció automáticamente y funcionó muy bien.

ingrese la descripción de la imagen aquí

bgarr
fuente
-1

Esto funciona para mi. En Safari versión 8.0.3 y simulador de IOs versión 8.1

  1. Copiar texto de Safari: resalte el texto y luego cmd-v o Editar> Copiar.
  2. En Ios Simulator, haga clic en Editar> Pegar.
  3. En TextField o TextView, haga clic con el botón derecho y luego seleccione Pegar.
Oh mi
fuente
-1

Esto es lo que encontré.

  1. Copiar texto de mac.
  2. En el simulador, abra safari y resalte la barra de direcciones haciendo clic en ella.
  3. Presione Cmd + V
  4. Haga clic una vez en la barra de direcciones.
  5. Aparecerá el menú desplegable Pegar.
  6. Toque pegar.

Shift + Cmd + V también funciona muy bien.

Rishab
fuente
-1

⌘ + V: cuando el simulador de iOS está al frente, copie el contenido del portapapeles de OS X en iOS, pero no lo pegue. Nuevamente, esto funciona tanto para texto como para imágenes.
Por lo tanto, debe hacer lo siguiente:
1.copie el texto en cualquier lugar de su macOS, excepto en el simulador de iOS.
En el simulador de iOS, haga clic en ⌘ + V, copie el texto del portapapeles de macOS al clipborad del simulador de iOS.
En el simulador de iOS, TextField o TextView haga clic en -> Editar -> Pegar.

wj2061
fuente