Comment taper à l'aide de mon clavier sur le simulateur iPhone?


138

J'étais capable de taper avec mon vrai clavier mac après avoir lancé le simulateur iPhone. Taper avec le clavier du simulateur à l'écran est tout simplement horrible lors de tests avec de grandes quantités de texte.

Quoi que je fasse, je n'arrive plus à faire taper mon clavier dans le simulateur. Même si "Simulate Hardware Keyboard" est activé, il ne saisit rien. Quelqu'un peut-il me dire ce que je fais mal? N'y a-t-il plus moyen de taper avec le vrai clavier?


@ user189924: Veuillez marquer les questions précédentes avec les réponses acceptées, là où les gens vous ont aidé. Il aide la communauté et motive les autres à répondre à vos futures questions.
Alex Reynolds

2
Les 5 réponses actuelles fonctionnent, mais la TRÈS MEILLEURE réponse est celle actuellement en bas de @SGS.
Chuck H

2
Salut @strange - à partir de xCode 6, la réponse sélectionnée ne semble pas être la meilleure approche. Envisageriez-vous de réévaluer votre choix? Les deux réponses sur l'utilisation des options de menu du simulateur et la couverture des raccourcis clavier sont des slamors et les miens . Cependant, si vous êtes satisfait du choix actuel, veuillez le garder.
Benjohn

1
⇧⌘K comme expliqué par @Benjohn stackoverflow.com/a/26715382/242933
ma11hew28

La même chose m'est arrivée et a été résolue de cette façon
Mahbub Morshed

Réponses:


260

Essayez de supprimer le fichier de préférences de l'iPhone Simulator. Lorsque mon iPhone Simulator a cessé de répondre aux frappes, cela a résolu le problème.

  1. Quittez le simulateur.
  2. Accédez au Finder et appuyez sur (commande + Maj + G) puis naviguez ~/Library/Preferences.
  3. Déplacez-vous com.apple.iphonesimulator.plistà la poubelle.
  4. Essayez à nouveau de lancer votre application iPhone dans le simulateur.

1
Lorsque je fais une rotation ou un zoom, je perds la capacité. Existe-t-il une solution permanente?
philipkd

1
@Philosophistry je perds la possibilité de taper aussi, quand je tourne en utilisant ⌘→ou ⌘←. J'ai découvert que je devais le faire pivoter en utilisant les entrées de menu.
Tobia

4
Il semble y avoir un bogue dans le simulateur où il cesse de répondre au clavier après avoir utilisé les raccourcis de rotation. Pour résoudre ce problème, appuyez sur la ⌘ Cmdtouche seule. Il devrait accepter de taper à nouveau. Voir aussi: stackoverflow.com/questions/18979510/…
Mike

6
Au lieu de supprimer le fichier plist, je viens de l'ouvrir et de changer le champ EnableKeyboardSyncen YES. Ensuite, je redémarre mon simulateur.
ohnit

1
Cette réponse n'est plus correcte depuis XCode 6.0.1. Voir la réponse de @slamor et Keith Smiley ci-dessous.
adjwilli

144

La suppression de com.apple.iphonesimulator.plist ne m'a pas aidé sous Xcode 6.0.1. Probablement, cela fonctionnait dans l'ancien Xcode.

Mais, ce qui fonctionne parfaitement pour moi sous Xcode 6.0.1, ce sont les nouveaux raccourcis clavier dans iOS Simulator:

Shift-Command-K   Connect/Disconnect Hardware Keyboard
Command-K         Toggle (Show/Hide) Software Keyboard

Et, vous savez, j'ai vraiment souffert pendant 2 mois, jusqu'à ce que je le trouve, et c'est très pratique maintenant))


Je vous remercie! J'avais du mal à taper mes plus longues informations d'identification dans l'application pendant une semaine! :)
Solomiya

Vous êtes les bienvenus! À propos, ces touches de raccourci fonctionnent parfaitement également dans le dernier xCode 6.1 sous OS X Yosemite.
slamour

Vraiment utile, moi aussi je me débattais depuis quelques jours.
ChenSmile

C'est une bien meilleure solution de contournement au bogue d'Apple que la réponse acceptée.
SeanR

c'est la bonne manière, j'ai eu du mal pendant plusieurs jours à faire en sorte que le simulateur utilise le clavier physique. Je ne sais pas s'il s'agit d'un bogue, cela pourrait être une fonctionnalité, du point de vue d'Apple, pour permettre de permuter entre l'entrée basée sur le robinet ou le matériel externe
Bogdan

72

Ne supprimez pas les fichiers de préférences du simulateur iPhone. Il n'y a pas besoin de faire ça.

Regardez dans le menu du simulateur Hardware ➔ Keyboard. Les options du menu sont:

  1. iOS utilise la même disposition que OS X
  2. Connecter le clavier matériel ⇧⌘K
  3. Toggle Clavier logiciel ⌘K

Assurez-vous que l'option 2 est cochée.

S'il est déjà coché, décochez-le puis vérifiez à nouveau (vous voudrez probablement apprendre les raccourcis clavier).

Si vous trouvez que cela masque le clavier à l'écran, mais que vous souhaitez également qu'il s'affiche, utilisez l'option 3 pour le réactiver.

Si la rotation du simulateur semble arrêter le fonctionnement du clavier, désactivez l'option deux, puis réactivez-la - cela semble le résoudre.


2
Cela a fonctionné pour moi! Essayez
certainement

Presque deux ans après avoir répondu, c'est de loin ma réponse la plus votée sur SO, vous dit tout ce que vous devez savoir sur le génie logiciel contemporain :-)
Benjohn

Pour une raison quelconque, j'ai eu le même problème. Mon clavier fonctionnait et à un moment donné, ce paramètre a changé et le clavier du simulateur a cessé de fonctionner. C'est la réponse qui a résolu mon problème dans XCode 8.3
sonar0007

1
@ sonar0007 Cela m'arrive souvent lorsque je mets à niveau xCode.
Benjohn

27

J'utilise iOS Simulator version 7.0. Pendant que le simulateur fonctionnait, je suis allé sur iOS Simulator-> Réinitialiser le contenu et les paramètres ... et réinitialiser le simulateur à partir de là. Cela semblait avoir fait l'affaire pour moi. J'espère que cela pourra aider.


4
Cela fonctionne pour iOS7, mais une fois que vous changez l'échelle de la fenêtre pour le simulateur, il cesse à nouveau de répondre au clavier matériel.
Monstre iOS

C'est la meilleure façon de relancer le clavier
Gajendra K Chauhan

Sur iOS Simulator 10.0 utiliserHardware -> Erase All Content and Settings...
Nikolai R Kristiansen

17

En effet, vous avez utilisé la modification de l'orientation du simulateur à l'aide de raccourcis clavier. Appuyez simplement sur cmd sur le clavier mac puis commencez à taper.


2
À mon avis, c'est la meilleure réponse.
Chuck H

1
Cela fonctionne environ la moitié du temps. Cette autre moitié, quelque chose d'autre l'a causé, et cela ne fait pas l'affaire.
arik

1
J'ai essayé toutes les solutions ci-dessus, mais la saisie de cmd m'a sauvé la journée.
Renato Back

8

Tout ce que j'avais à faire était de quitter le simulateur et de le relancer


4

MON PROBLÈME ÉTAIT QUE LE CLAVIER S'AFFICHE ET LES TOUCHES NE SONT PAS DÉTECTÉES. ET J'AI TROUVÉ LA SOLUTION:

Vous n'avez pas besoin de quitter le clavier.

Essayez Hardware-> Keyboard-> Connect Hardware Keyboard directement


3

La suppression a com.apple.iphonesimulator.plistfonctionné pour moi aussi, mais j'ai dû le localiser dans le dossier caché/Users/[yourusername]/Library/Preferences/


7
En fait, le signe tilde "~" dans "~ / Library / Preferences" se traduit par / Users / [yourusername] dans le terminal, c'est juste un caractère spécial pratique dans les chemins Unix de votre répertoire personnel.
Trond Hatlen

1

Shell / Ligne de commande / Jenkins / CI:

sh "plutil -replace DevicePreferences.${deviceID}.ConnectHardwareKeyboard -bool NO $HOME/Library/Preferences/com.apple.iphonesimulator.plist"
sh "plutil -extract DevicePreferences.${deviceID} xml1 -o - $HOME/Library/Preferences/com.apple.iphonesimulator.plist"

L'ID de l'appareil peut être trouvé via xcrun / simctl, en fonction du nom de devoce:

xcrun simctl list | grep ${simulatorDeviceName} | sed 's/).*(.*//;s/.*(//'


0

Si vous développez une application React Native et que vous ne pouvez pas actualiser ( ⌘R) ou activer le débogage à distance ( ⌘D) à partir du simulateur iOS, alors que les autres entrées du clavier fonctionnent, assurez-vous d'exécuter une configuration de génération de débogage . Vous pouvez vérifier cela avec:

Product -> Scheme -> Edit Scheme -> Run -> Info -> Build Configuration -> Debug"

J'ai eu cette astuce d' ici .


0

Redémarrez simplement Simulator (fermez et ouvrez l'application).

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.