Não é possível digitar no campo de texto no simulador de iphone usando o teclado do Mac?

98

Estou trabalhando em um aplicativo iOS básico que suporta os modos retrato e paisagem. Quando o teclado do simulador do iPhone está aberto na paisagem e estou mudando o aplicativo para o modo retrato, não consigo digitar nada em nenhum campo de texto usando o teclado físico do meu Mac.

Alguém já experimentou isso antes? É um bug conhecido?

Deepak Carpenter
fonte
Você pode fornecer mais informações, como a versão do XCode e do iOS SDK que está usando?
brimble2010
1
Eu tenho exatamente o mesmo problema. Às vezes, também recebo uma série de avisos de contexto inválido no console.
bilobatum

Respostas:

80

Encontrei uma ótima solução que funcionou para mim.
Abra o simulador e encontre o menu Hardware -> Teclado tem três opções:

  1. iOS usa o mesmo layout do OS X : esta opção desativa o teclado do Mac
  2. Conectar teclado de hardware : esta opção ativa o teclado Mac, mas o teclado não aparecerá.
  3. Alternar teclado do software : Esta opção permitirá que você digite usando o teclado do Mac e também mostrará o teclado da tela do iOS.
iosCurator
fonte
funcionou como em 2020 ... Não foi possível digitar no simulador, depois de mudar para o teclado Hardrware funciona
Juan
52

No Xcode 9, enfrentei o mesmo problema com o simulador do iPhone 8+. Consegui resolver desta forma:

  1. Abrir ~/Library/Preferences/com.apple.iphonesimulator.plistarquivo
  2. Encontre o identificador do simulador problemático (mostrado na janela Dispositivos e Simulador )
  3. Defina o CaptureKeyboardInputvalor paraYES
  4. Reinicie o Simulador

Mahbub Morshed
fonte
2
Obrigado. Esta é a única coisa que funciona para mim no Xcode 9. Tinha tentado as várias combinações dentro do menu de hardware sem sucesso. Passei e adicionei manualmente a todos os meus sims. Não destruí e recriou um sim ainda para ver se isso também resolvia. Não é a primeira vez que a apple bagunça os sims, provavelmente também não será a última. :)
StephenFeather
2
Você merece uma medalha.
Oliver Pearmain
2
Esta é a única solução que me ajudou. Obrigado!
gokeji de
1
que resposta mano, tiro o chapéu
Jaydip
1
Sim, esta é a resposta para mim. Muito obrigado
Witalo Benicio
41

Antes de começar a digitar (quando o teclado na tela aparecer), pressione apenas a tecla de comando e solte-a. Isso deve reativar o teclado no simulador.

Eugene Osovetsky
fonte
1
Esta resposta é visível em uma pesquisa no Google para o problema. Muito bem, Eugene. Como você descobriu? Muito melhor do que as outras "soluções" que tentei.
Nuthatch de
17
Digitar CMD + Shift + K duas vezes enquanto o teclado está aparecendo resolveu o problema para mim.
Chanchal Raj
4
Não funciona no simulador do Xcode 9. Nada acontece.
Jose Ramirez,
Funcionou para mim uma vez. Então o teclado parou de funcionar para mim novamente não muito tempo depois e agora isso não funciona. (Simulador v10.0, Xcode 9.2)
Ryan H.
37

No menu Simulador >> Hardware >> Teclado >> Conectar teclado de hardware

OU

apenas pressione ⌘ + ⌂ + K

Meseery
fonte
funcionou para mim, mas logo depois reiniciei o simulador
marcomoreira92
25

Inicie o simulador iOS e ative-o Hardware > Keyboard > Connect Hardware Keyboard.

(Você pode ter desativado acidentalmente pressionando CMD + SHIFT + K- o mesmo atalho do Clean no Xcode)

Attila H
fonte
18

No Simulador, tente alterar o dispositivo. Em seguida, execute seu aplicativo novamente no dispositivo original. Isso funcionou para mim.

Se a primeira etapa sozinha não funcionar, desmarque a opção: iOS Usa o mesmo layout de teclado do OS X e, em seguida, altere o dispositivo.

Eu descobri fazendo coisas aleatórias até que funcionou. Fixação de macacos.

clopez
fonte
1
Não precisei dar o primeiro passo, mas o segundo funcionou. Obrigado!
rob5408
Adoro como cada resposta a essa pergunta é completamente diferente. Simulador idiota de iOS. O seu funcionou para mim - enviei-o aleatoriamente :)
Darragh Enright
Isso funcionou para mim, exceto que eu não precisei abrir outro simulador. Simplesmente fechei a janela do simulador (você pode ter várias janelas do simulador ativadas agora e fechá-las individualmente também) e, em seguida, executei novamente o aplicativo do Xcode para trazê-lo de volta. Definitivamente algo estranho com o simulador. Já faz muito tempo que é problemático :(
Ryan H.
17

Nenhuma dessas sugestões funcionou para mim. Fechei o aplicativo iOS Simulator e o reiniciei. Isso resolveu para mim.

PeqNP
fonte
Pateta. Funcionou para mim.
KeithTheBiped
Se você tentou alternar o teclado com shift-command-k, tente o seguinte.
KeithTheBiped
@KeithTheBiped eu tentei shift-command-k sem sorte antes de terminar com o simulador de reinicialização ios.
Bukhari
14

Acho que é apenas por causa de um problema que você não selecionou a opção 'conectar teclado de hardware, na barra de menu do simulador chamada' Hardware '

Por favor siga os passos

Vá para: Hardware -> Teclado -> Conectar teclado de hardware

Espero que ajude você com o problema, obrigado.insira a descrição da imagem aqui

Fansad PP
fonte
11

Estou vendo o mesmo problema. Acredito que o problema esteja relacionado à tecla de comando estar "presa" no simulador se você girar o dispositivo no simulador usando os atalhos Command-LeftArrow e Command-RightArrow.

Enquanto esperamos que a Apple conserte, uma maneira de contornar isso é girar o dispositivo selecionando a opção de menu em vez do atalho de teclado. Isso gira o dispositivo e parece deixar o teclado em um estado de funcionamento.

Simon Convidado
fonte
9

Repetir o comando abaixo duas vezes funcionou para mim !!

CMD + Shift + K

Dhaval H. Nena
fonte
5

Não é um problema, apenas execute estas etapas fáceis.

  1. Simulador aberto

  2. Indo para o início e você ver a opção Hardware clique aqui.

  3. Quando você clica em Hardware, algumas opções aparecem e uma opção é Teclado.

  4. Clique na opção Teclado e você verá três opções aparecerem.

  5. Se você quiser usar o teclado do botão mac, selecione a segunda opção Conectar teclado de hardware.

  6. Se quiser usar o teclado móvel, selecione a 3ª opção.

  7. A 1ª opção é para quem seleciona seu teclado por meio de código.

Aproveite todo esse trabalho.

Zeeshan Dar
fonte
1
Se não funcionar. Mate (feche e inicie) o simulador e repita essas etapas novamente. Espero que funcione.
FARAZ
5

Acabei de instalar uma nova versão do Xcode (5.0) e o teclado no simulador iOS não funcionou na primeira inicialização. Apenas reiniciar o Simulador ajudou.

strah
fonte
4

Para mim, selecione Simulador, selecione Hardware -> Teclado -> Conectar teclado de hardware.

Funcionou para mim

Mosib Asad
fonte
3

Eu tentei o que você acabou de dizer e é verdade, não funciona se eu mover para paisagem e depois para retrato novamente. Não tem lógica porque meu app nem muda e funciona bem no aparelho, então é um bug do simulador.

Você pode relatar à Apple usando:

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

Antonio MG
fonte
2

A solução que realmente funcionou para mim foi deletar o simulador e criar um novo. Este bug eu acho que comumente ocorre quando todos os atalhos não funcionam do seu teclado para o simulador.

kakashy
fonte
2

Saia do simulador e execute o seguinte comando no terminal:

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

Rohan Sanap
fonte
aperfeiçoe esta resposta!
Farid Blaster
2

Tive problemas com o simulador iPhone6, mudei-o para iPhone7 . No iPhone7 posso continuar o meu trabalho.

Ashok R
fonte
1

Se o teclado do seu Mac ainda estiver desconectado após ter todas as opções e configurações corretas, uma das causas é a rotação do dispositivo.

Se vocês CMD + ou girar o dispositivo antes do início do simulador, o teclado do Mac não funcionará de forma alguma; alterar as configurações do menu não faz nada! Pode ser útil usar o teclado do Mac para inserir dados dentro do dispositivo antes de girar o dispositivo.

Desativar "Enviar atalhos do menu para o dispositivo" e reiniciar o Simulador pode ajudar às vezes. Vou atualizar se obtiver comportamento confiável e passível de recriação.

Acho que o teclado do Mac funciona na metade do tempo que executo e saio do Simulador. 50% não é ruim depois de todos esses anos !?

dru
fonte
1

Acabei de reiniciar o simulador e funcionou para mim.

Ved Rauniyar
fonte
1

Basta usar CMD + SHIFT + K e o teclado será ativado por conta própria.

Uchenna Nnodim
fonte
0

Eu encontrei esse problema sempre que giro o simulador. Seguir as sugestões para alterar as opções de hardware não funciona para mim, nem reinicie o simulador iOS.

Eu descobri um truque que permite clicar na área de edição após a rotação fazer o teclado do Mac funcionar.

Azules
fonte
0

Depois de fazer tantas coisas, apenas reiniciar minha máquina e habilitar o abaixo funcionou.

Ativando no simulador: Hardware -> Teclado -> Conectar teclado de hardware

Easwaramoorthy K
fonte
0

Para a versão 10.0 (SimulatorApp-851.2 CoreSimulator-518.19) com Xcode 9.3, nada funcionou para mim. Eu reiniciei o simulador por Hardware -> Apagar Todo o Conteúdo e Configurações -> Apagar. Limpei o projeto e rodou no simulador. A conexão do teclado está de volta.

AG
fonte
0

Encontrei esse problema depois de remover Main.storyboarde criar a janela principal no código. Voltando a usar o Main.storyboardconsertou para mim.

Benedict Cohen
fonte
0

Para mim, isso funcionou no simulador do iPhone 8+ iOS 11.2: 1. Vá para Menu -> Hardware -> Apagar todos os conteúdos e configurações. 2. Exclua os dados derivados do xcode. Xcode -> Preferências -> Locais -> Clique na seta direita no lado esquerdo do botão "Avançado".

cripta
fonte
0

para mim, no simulador aberto, no menu do seu mac, clique em Hardware e acesse a opção de teclado e selecione alternar teclado de software. como mostrado

Preetham NT
fonte
0

Existe uma biblioteca para editar arquivos plist chamada plistlib. Aqui está o meu 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")

Isso lê o arquivo plist, altera o ConnectHardwareKeyboardvalor para Noe grava o novo arquivo no mesmo local. Isso funciona para mim, mas deixe-me saber se há uma maneira melhor de fazer isso. Ainda sou novo em programação.

tyler hackett
fonte
0

Acabei de sair do meu simulador e funcionou para mim.

Vikash Sinha
fonte