Como digito usando meu teclado no simulador de iphone?

138

Eu costumava ser capaz de digitar com o meu teclado mac real depois de iniciar o iPhone Simulator. Digitar com o teclado do simulador na tela é horrível ao testar com grandes quantidades de texto.

Não importa o que eu faça, não consigo mais digitar meu teclado dentro do simulador. Mesmo se o "Simulate Hardware Keyboard" estiver ativado, ele simplesmente não digitará nada. Alguém pode me dizer o que estou fazendo de errado? Não há mais como digitar usando o teclado real?

estranho
fonte
@ user189924: marque as perguntas anteriores com respostas aceitas, onde as pessoas o ajudaram. Ajuda a comunidade e motiva outras pessoas a responder suas perguntas futuras.
Alex Reynolds
2
Todas as 5 respostas atuais funcionam, mas a resposta MUITO MELHOR é a que está atualmente na parte inferior por @SGS.
mandril H
2
Olá, @strange - com o xCode 6 em diante, a resposta selecionada não parece ser a melhor abordagem. Você consideraria reavaliar sua escolha? As duas respostas sobre como usar as opções de menu do simulador e cobrindo os atalhos de teclado são de slamor e minha própria . No entanto, se você estiver satisfeito com a escolha atual, mantenha essa.
Benjohn 23/05
1
⇧⌘K como explicado por @Benjohn stackoverflow.com/a/26715382/242933
ma11hew28
A mesma coisa aconteceu comigo e foi resolvido dessa forma- stackoverflow.com/a/47696048/413877
Mahbub Morshed

Respostas:

260

Tente remover o arquivo de preferências do iPhone Simulator. Quando o iPhone Simulator parou de responder às teclas, isso foi corrigido.

  1. Saia do simulador.
  2. Vá para o localizador e pressione (command + shift + G) e navegue ~/Library/Preferences.
  3. Mover com.apple.iphonesimulator.plistpara o lixo.
  4. Tente iniciar seu aplicativo para iPhone no simulador novamente.
David Brown
fonte
1
Quando eu giro ou aplico zoom, perco a capacidade. Existe uma solução permanente?
philipkd
1
Filosofia @ Perco a capacidade de digitar também quando giro usando ⌘→ou ⌘←. Descobri que preciso girá-lo usando as entradas do menu.
Tobia
4
Parece haver um bug no simulador, onde ele para de responder ao teclado depois de usar os atalhos de rotação. Para corrigir isso, toque na ⌘ Cmdtecla por conta própria. Ele deve aceitar digitar novamente. Veja também: stackoverflow.com/questions/18979510/…
Mike
6
Em vez de excluir o arquivo plist, basta abri-lo e alterar o campo EnableKeyboardSyncpara YES. Então eu reinicio meu simulador.
ohnit
1
Esta resposta não está mais correta a partir do XCode 6.0.1. Veja a resposta de @slamor e Keith Smiley abaixo.
adjwilli
144

Excluir com.apple.iphonesimulator.plist não me ajudou no Xcode 6.0.1. Provavelmente, funcionou no antigo Xcode.

Mas, o que funciona perfeitamente para mim no Xcode 6.0.1, são as novas teclas de atalho no iOS Simulator:

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

E, você sabe, eu realmente sofri nos últimos 2 meses, até encontrá-lo, e é muito conveniente agora))

slamor
fonte
Obrigado! Eu estava lutando para digitar minhas credenciais loooong no aplicativo por uma semana! :)
Solomiya
Você é bem vindo! A propósito, essas teclas de atalho funcionam perfeitamente também no xCode 6.1 mais recente no OS X Yosemite.
Slamor 22/10
Realmente útil, eu também estava lutando por alguns dias.
ChenSmile
Esta é uma solução muito melhor para o bug da Apple do que a resposta aceita.
SeanR
esta é a maneira correta, eu estava lutando por vários dias para fazer o simulador usar o teclado físico. Eu não tenho certeza se este é um bug, pode ser um recurso, do ponto de vista da Apple, para permitir a troca entre a entrada com base torneira ou hardware externo
Bogdan
72

Não jogue fora os arquivos de preferência do simulador do iPhone. Não há necessidade de fazer isso.

Olhe no menu do simulador Hardware ➔ Keyboard. As opções do menu são:

  1. iOS usa o mesmo layout que o OS X
  2. Teclado de hardware de conexão ⇧⌘K
  3. Alternar teclado de software ⌘K

Verifique se a opção 2 está marcada.

Se já estiver marcado, desmarque-o e verifique-o novamente (provavelmente você precisará aprender os atalhos do teclado).

Se você achar que isso oculta o teclado na tela, mas também deseja que seja exibido, use a opção 3 para ativá-lo novamente.

Se a rotação do simulador parecer parar o funcionamento do teclado, desative a opção duas e ligue-a novamente - isso parece resolver o problema.

Benjohn
fonte
2
Isso funcionou para mim! Definitivamente tentar isso antes de jogar nada fora
Yoseob Lee
Quase dois anos depois de responder, sendo esta, de longe, o meu mais up-votado resposta no SO, diz tudo o que você precisa saber sobre engenharia de software contemporânea :-)
Benjohn
Por alguma razão, tive o mesmo problema. Meu teclado estava funcionando e, em algum momento, essa configuração foi alterada e o teclado no simulador parou de funcionar. Esta é a resposta que sovled meu problema no XCode 8.3
sonar0007
1
@ sonar0007 Frequentemente, acontece novamente quando eu atualizo o xCode.
Benjohn
27

Estou usando o iOS Simulator versão 7.0. Enquanto o simulador estava em execução, fui ao iOS Simulator-> Redefinir conteúdo e configurações ... e redefini o simulador a partir daí. Isso parecia ter feito o truque para mim. Espero que ajude.

nocturnalbee
fonte
4
Ele funciona no iOS7, mas depois que você altera a escala da janela do simulador, ele novamente para de responder ao teclado do hardware.
iOS Monster
Esta é a melhor maneira de teclado relançamento
Gajendra K Chauhan
No iOS Simulator 10.0, useHardware -> Erase All Content and Settings...
Nikolai R Kristiansen
17

Isso ocorre porque você usou a alteração da orientação do simulador usando atalhos de teclado. Basta pressionar cmd no teclado mac e começar a digitar.

gunas
fonte
2
Na minha opinião, esta é a melhor resposta.
mandril H
1
Isso funciona cerca da metade do tempo. Essa outra metade, outra coisa causou, e isso não funciona.
Arik #
1
Eu tentei todas as soluções acima, mas digitar cmd salvou meu dia.
Renato Back
8

Tudo o que eu precisava fazer era sair do simulador e iniciá-lo novamente

Chicowitz
fonte
4

MEU PROBLEMA FOI O TECLADO ESTÁ MOSTRANDO E OS TECLADOS NÃO DETECTAM. E eu achei a solução:

Você não precisa sair do teclado.

Experimente Hardware-> Teclado-> Conecte o teclado de hardware diretamente

Ram Madhavan
fonte
3

A remoção também com.apple.iphonesimulator.plistfuncionou para mim, mas tive que localizá-la dentro da pasta oculta/Users/[yourusername]/Library/Preferences/

James
fonte
7
Na verdade, o sinal "~" em "~ / Library / Preferences" se traduz em / Users / [yourusername] no terminal, é apenas um caractere especial conveniente em caminhos unix para o diretório pessoal.
Trond Hatlen
1

Shell / Linha de Comando / 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"

O ID do dispositivo pode ser encontrado via xcrun / simctl, com base no nome do devoce:

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

Encontrei o mesmo problema e tentei várias maneiras diferentes que funcionavam principalmente, mas nunca com certeza. Finalmente, eu encontrei isso. https://stackoverflow.com/a/26057011/1463604

Nishant
fonte
0

Se você estiver desenvolvendo um aplicativo React Native e não puder atualizar ( ⌘R) ou ativar a depuração remota ( ⌘D) no simulador do iOS, enquanto outras entradas do teclado funcionarem, verifique se está executando uma configuração de compilação de depuração . Você pode verificar isso com:

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

Eu recebi essa dica daqui .

Franz
fonte
0

Basta reiniciar o Simulator (fechar e abrir o aplicativo).

Dmitry
fonte