¿No puede escribir en el campo de texto en el simulador de iPhone usando el teclado de Mac?

98

Estoy trabajando en una aplicación básica de iOS que admite los modos vertical y horizontal. Cuando el teclado del simulador de iPhone está abierto en horizontal y cambio la aplicación al modo vertical, no puedo escribir nada en ningún campo de texto con el teclado físico de mi Mac.

¿Alguien ha experimentado esto antes? ¿Es un error conocido?

Carpintero Deepak
fuente
¿Puede dar más información, como la versión de XCode y el SDK de iOS que está utilizando, por favor?
brimble2010
1
Tengo exactamente el mismo problema. A veces también recibo una serie de advertencias de contexto no válidas en la consola.
bilobatum

Respuestas:

80

Encontré una gran solución que funcionó para mí.
Abra el simulador, luego busque el menú Hardware -> El teclado tiene tres opciones:

  1. iOS usa el mismo diseño que OS X : esta opción desactiva el teclado de Mac
  2. Conectar teclado de hardware : esta opción habilita el teclado de Mac, pero el teclado no se mostrará.
  3. Alternar teclado de software : esta opción le permitirá escribir con el teclado de su Mac y también mostrará el teclado de iOS en la pantalla.
iosCurador
fuente
esto funcionó como en 2020 ... No se pudo escribir en el simulador, después de cambiar al teclado Hardrware funciona
Juan
52

En Xcode 9 enfrenté el mismo problema con el simulador de iPhone 8+. Pude resolverlo de esta manera:

  1. Abrir ~/Library/Preferences/com.apple.iphonesimulator.plistarchivo
  2. Busque el identificador del simulador problemático (que se muestra en la ventana Dispositivos y simulador )
  3. Establecer CaptureKeyboardInputvalor enYES
  4. Reinicie el simulador

Mahbub Morshed
fuente
2
Gracias. Esto es lo único que me funciona en Xcode 9. Había probado las diversas combinaciones dentro del menú de hardware sin éxito. Lo revisé y lo agregué manualmente a todos mis sims. Todavía no destruí y recreé una simulación para ver si eso también lo resolvía. No es la primera vez que Apple arruina los sims, probablemente tampoco será la última. :)
StephenFeather
2
Te mereces una medalla.
Oliver Pearmain
2
Esta es la única solución que me ayudó. ¡Gracias!
gokeji
1
qué respuesta hermano,
felicitaciones
1
Sí, esta es la respuesta para mí. Muchas gracias
Witalo Benicio
41

Antes de comenzar a escribir (cuando aparezca el teclado en pantalla), presione solo la tecla de comando y luego suéltela. Esto debería volver a habilitar el teclado en el simulador.

Eugene Osovetsky
fuente
1
Esta respuesta es visible en una búsqueda de Google para el problema. Bien hecho, Eugene. ¿Cómo lo averiguaste? Mucho mejor que las otras "soluciones" que he probado.
Trepador
17
Escribiendo CMD + Shift + K dos veces mientras aparece el teclado, me resolvió el problema.
Chanchal Raj
4
No funciona en el simulador de Xcode 9. No pasa nada.
Jose Ramirez
Me funcionó una vez. Luego, el teclado dejó de funcionar para mí nuevamente no mucho después y ahora esto no funciona. (Simulador v10.0, Xcode 9.2)
Ryan H.
37

Desde el menú Simulador >> Hardware >> Teclado >> Conectar teclado de hardware

O

solo presione ⌘ + ⌂ + K

Meseery
fuente
esto funcionó para mí, pero justo después de reiniciar el simulador
marcomoreira92
25

Inicie iOS Simulator y habilite Hardware > Keyboard > Connect Hardware Keyboard.

(Es posible que lo haya desactivado accidentalmente presionando CMD + SHIFT + K- mismo atajo que Limpiar en Xcode)

Atila H
fuente
18

En el simulador, intente cambiar el dispositivo. Luego, ejecute su aplicación nuevamente en el dispositivo original. Eso funcionó para mí.

Si el primer paso por sí solo no funciona, desmarque la opción: iOS usa la misma distribución de teclado que OS X y luego cambie el dispositivo.

Lo descubrí haciendo cosas al azar hasta que funcionó. Arreglo de mono.

clopez
fuente
1
No tuve que hacer el primer paso, pero el segundo paso funcionó. ¡Gracias!
rob5408
Me encanta cómo casi todas las respuestas a esta pregunta son completamente diferentes. Simulador de iOS tonto. El tuyo funcionó para mí, lo asigné al azar para que se sometiera :)
Darragh Enright
Esto funcionó para mí, excepto que no necesité abrir otro simulador. Simplemente cerré la ventana del simulador (ahora puede tener múltiples ventanas del simulador y cerrarlas individualmente también) y luego volví a ejecutar la aplicación desde Xcode para volver a activarla. Definitivamente algo raro con el simulador. Ha sido problemático durante mucho tiempo :(
Ryan H.
17

Ninguna de estas sugerencias funcionó para mí. Cerré la aplicación iOS Simulator y la reinicié. Eso me lo arregló.

PeqNP
fuente
Mentecato. Trabajó para mi.
KeithTheBiped
Si ha intentado alternar el teclado con shift-command-k, intente lo siguiente.
KeithTheBiped
@KeithTheBiped intenté shift-command-k sin suerte antes de terminar reiniciando el simulador ios.
Bukhari
14

Creo que es solo por un problema que no seleccionó la opción 'conectar teclado de hardware', en la barra de menú del simulador llamada 'Hardware'

Siga los pasos

Ir a: Hardware -> Teclado -> Conectar teclado de hardware

Espero que te ayude con el problema, gracias.ingrese la descripción de la imagen aquí

Fansad PP
fuente
11

Veo el mismo problema. Creo que el problema está relacionado con la tecla de comando "atascada" en el simulador si gira el dispositivo en el simulador usando los atajos Command-LeftArrow y Command-RightArrow.

Mientras esperamos que Apple lo solucione, una forma de evitarlo es girar el dispositivo seleccionando la opción de menú en lugar del atajo de teclado. Esto hace girar el dispositivo y parece dejar el teclado en un estado de funcionamiento.

Simon Guest
fuente
9

¡Repetir el siguiente comando dos veces funcionó para mí!

CMD + Mayús + K

Dhaval H. Nena
fuente
5

No es un problema, simplemente siga estos sencillos pasos.

  1. Simulador abierto

  2. Ir a la parte superior y verá la opción Hardware, haga clic en esto.

  3. Cuando hace clic en Hardware, aparece alguna opción y una opción es Teclado.

  4. Haga clic en la opción Teclado y verá aparecer tres opciones.

  5. Si desea utilizar su teclado de botones mac, simplemente seleccione la segunda opción Conectar teclado de hardware.

  6. Si desea utilizar el teclado táctil móvil, seleccione la tercera opción.

  7. La primera opción es para aquellos que seleccionan su teclado a través del código.

Disfrute de todo el trabajo.

zeeshan Dar
fuente
1
Si no funciona. Mata (cierra e inicia) el simulador y repite estos pasos nuevamente. Espero que funcione.
FARAZ
5

Acabo de instalar una nueva versión de Xcode (5.0) y el teclado en iOS Simulator no funcionó en el primer lanzamiento. Simplemente reiniciar el Simulador ayudó.

strah
fuente
4

Para mí, seleccione Simulador, seleccione Hardware -> Teclado -> Conectar teclado de hardware.

Funcionó para mí.

Mosib Asad
fuente
3

Intenté lo que acabas de decir y es cierto, no funciona si lo muevo a horizontal y luego a vertical nuevamente. No tiene ninguna lógica porque mi aplicación ni siquiera está cambiando y funciona bien en el dispositivo, por lo que es un error en el simulador.

Puedes informarlo a Apple usando esto:

https://developer.apple.com/bug-reporting/

Antonio MG
fuente
2

La solución que realmente funcionó para mí fue eliminar el simulador y crear uno nuevo. Este error creo que ocurre comúnmente cuando todos los atajos no funcionan desde el teclado al simulador.

kakashy
fuente
2

Salga del simulador y ejecute el siguiente comando en la terminal:

rm ~/Library/Preferences/com.apple.iphonesimulator.plist

Rohan Sanap
fuente
perfecciona esta respuesta!
Farid Blaster
2

Tuve un problema con el simulador de iPhone6 , lo cambié a iPhone7. En iPhone7 puedo continuar mi trabajo.

Ashok R
fuente
1

Si el teclado de su Mac aún está desconectado después de tener todas las opciones y configuraciones correctas, una de las causas es la rotación del dispositivo.

Si tu CMD+ o gira el dispositivo antes de que se inicie el simulador, el teclado de Mac no funcionará en absoluto; cambiar la configuración del menú no hace nada! Puede resultar útil utilizar el teclado de Mac para introducir datos dentro del dispositivo antes de girarlo.

Desactivar "Enviar accesos directos del menú al dispositivo" y reiniciar el simulador ayuda a veces. Actualizaré si obtengo un comportamiento confiable y recreable.

Encuentro que el teclado de Mac funciona aproximadamente la mitad del tiempo que ejecuto y salgo de Simulator. ¿¡El 50% no está mal después de todos estos años !?

dru
fuente
1

Acabo de reiniciar el simulador y funcionó para mí.

Ved Rauniyar
fuente
1

Simplemente use CMD + SHIFT + K y el teclado se activará por sí solo.

Uchenna Nnodim
fuente
0

Me encontré con este problema cada vez que roté el simulador. Seguir las sugerencias para cambiar las opciones de hardware no me funciona, ni reiniciar iOS Simulator.

Encontré un truco que hace clic en el área de edición después de la rotación y hace que el teclado de Mac funcione.

Azules
fuente
0

Después de hacer tantas cosas, solo reiniciar mi máquina y habilitar lo siguiente funcionó.

Habilitando esto en el simulador: Hardware -> Teclado -> Conectar teclado de hardware

Easwaramoorthy K
fuente
0

Para la versión 10.0 (SimulatorApp-851.2 CoreSimulator-518.19) con Xcode 9.3, nada funcionó para mí. Restablezco el simulador por Hardware -> Borrar todo el contenido y la configuración -> Borrar. Limpió el proyecto y ejecútelo en el simulador. La conexión del teclado ha vuelto.

AG
fuente
0

Me encontré con este problema después de eliminar Main.storyboardy crear la ventana principal en el código. Volviendo a usarlo, lo Main.storyboardarreglé para mí.

Benedict Cohen
fuente
0

Para mí, hacer esto funcionó en el simulador de iPhone 8+ iOS 11.2: 1. Vaya a Menú -> Hardware -> Borrar todos los contenidos y configuraciones. 2. Elimine los datos derivados de xcode. Xcode -> Preferencias -> Ubicaciones -> Haga clic en la flecha derecha en el lado izquierdo del botón "Avanzado".

cripta
fuente
0

para mí, en el simulador abierto, en el menú de su mac, haga clic en Hardware y acceda a la opción de teclado y seleccione alternar teclado de software. como se muestra

Preetham NT
fuente
0

Existe una biblioteca para editar archivos plist llamada plistlib. Aquí está mi código:

    import plistlib

    file_name = ('path/to/com.apple.iphonesimulator.plist')
    try:
        p = plistlib.readPlist(file_name)
        p["ConnectHardwareKeyboard"] = "NO"
        plistlib.writePlist(p, file_name)
    except:
        print("Failure")

Esto lee el archivo plist, cambia el ConnectHardwareKeyboardvalor ay Noluego escribe el nuevo archivo en la misma ubicación. Esto funciona para mí, pero avíseme si hay una mejor manera de hacerlo. Todavía soy nuevo en la codificación.

Tyler Hackett
fuente
0

Acabo de salir de mi simulador y funcionó para mí.

Vikash Sinha
fuente