iPhoneシミュレータでキーボードを使用して入力するにはどうすればよいですか?


138

iPhone Simulatorを起動した後、本物のMacキーボードでタイプできるようになりました。大量のテキストでテストする場合、画面上のシミュレータキーボードで入力するのは恐ろしいことです。

どうしても、シミュレーター内でキーボードをタイプできなくなります。「ハードウェアキーボードのシミュレーション」をオンにしても、何も入力されません。誰かが私が間違っていることを教えてもらえますか?本物のキーボードを使ってタイプする方法はもうありませんか?


@ user189924:承認された回答を使って以前の質問にマークを付けてください。それはコミュニティを助け、あなたの将来の質問に答えるように他の人を動機づけます。
Alex Reynolds、

2
現在の5つの回答はすべて機能しますが、非常に最良の回答は、@ SGSによって現在一番下にある回答です。
Chuck H 14

2
こんにちは@strange – xCode 6以降では、選択された回答が最善のアプローチではないようです。選択を再評価することを検討しますか?シミュレーターのメニューオプションの使用とキーボードショートカットのカバーに関する2つの答えは、slamor私自身です。ただし、現在の選択に満足している場合は、そのまま選択してください。
ベンジョン、2015年

1
BKは@Benjohnによって説明されていますstackoverflow.com/a/26715382/242933
ma11hew28

同じことが私に起こったこのway-解決したstackoverflow.com/a/47696048/413877
Mahbub Morshed

回答:


260

iPhone Simulator設定ファイルをゴミ箱に入れてみてください。私のiPhoneシミュレーターがキーストロークに応答しなくなったとき、これはそれを修正しました。

  1. シミュレーターを終了します。
  2. ファインダーに移動し、(command + shift + G)を押してから、に移動し ~/Library/Preferencesます。
  3. com.apple.iphonesimulator.plistゴミ箱に移動します。
  4. シミュレーターでiPhoneアプリをもう一度起動してみてください。

1
回転またはズームすると、能力が失われます。恒久的な解決策はありますか?
philipkd 2013年

1
@Philosophistry ⌘→またはを使用してローテーションすると、入力もできなくなり⌘←ます。メニューエントリを使用して回転する必要があることがわかりました。
トビア2014年

4
回転のショートカットを使用した後、シミュレータがキーボードに応答しなくなるというバグがシミュレータにあるようです。これを修正するには、⌘ Cmdキーを単独でタップします。再度タイピングを受け入れる必要があります。参照:stackoverflow.com/questions/18979510/...
マイク

6
plistファイルを削除する代わりに、ファイルを開いてフィールドEnableKeyboardSyncをに変更しますYES。次に、シミュレータを再起動します。
ohnit 2014年

1
この答えは、XCode 6.0.1以降は正しくありません。以下の@slamorとキース・スマイリーの回答を参照してください。
adjwilli 2015

144

Xcode 6.0.1では、com.apple.iphonesimulator.plistを削除しても役に立ちませんでした。おそらく、それは古いXcodeで動作しました。

しかし、Xcode 6.0.1で完全に機能するのは、iOSシミュレーターの新しいホットキーです。

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

そして、あなたが知っている、私はそれを見つけるまで、私は過去2か月間本当に苦しみました、そしてそれは今とても便利です


ありがとうございました!1週間ほど、アプリにloooongの認証情報を入力するのに苦労しました!:)
ソロミヤ2014年

どういたしまして!ちなみに、これらのホットキーは、OS X Yosemiteの最新のxCode 6.1でも完全に機能します。
2014年

本当に役に立った、私も数日苦労していました。
ChenSmile 2014年

これは、受け入れられた回答よりもAppleのバグに対するはるかに優れた回避策です。
SeanR 2015

これは正しい方法です。シミュレータに物理キーボードを使用させるために数日間苦労していました。これがバグかどうかはわかりませんが、Appleの観点からは、タップベースの入力または外部ハードウェア間で交換できる機能である可能性があります
Bogdan

72

iPhoneシミュレーターの設定ファイルを捨てないでください。これを行う必要はありません。

シミュレータのメニューを見てくださいHardware ➔ Keyboard。メニューオプションは次のとおりです。

  1. iOSはOS Xと同じレイアウトを使用
  2. ハードウェアキーボードの接続ConnectK
  3. トグルソフトウェアキーボード ⌘K

オプション2がチェックされていることを確認します。

既にオンになっている場合は、オフにしてからもう一度オンにします(キーボードショートカットについて学習することをお勧めします)。

これにより画面上のキーボードが非表示になり、同時に表示したい場合は、オプション3を使用してオンに切り替えます。

シミュレーターを回転させるとキーボードが機能しなくなった場合は、オプション2をオフにしてからオンに戻します。これで問題が解決したようです。


2
これは私のために働いた!何かを捨てる前にこれを
ぜひ

回答からほぼ2年後、これはSOに関する私の最も高く投票された回答であり、現代のソフトウェアエンジニアリングについて知っておくべきすべてのことを物語っています:-)
Benjohn

どういうわけか私は同じ問題を抱えていました。キーボードが機能していましたが、ある時点でこの設定が変更され、シミュレーターのキーボードが機能しなくなりました。これが、XCode 8.3で私の問題を解決した答えです
sonar0007

1
@ sonar0007 xCodeをアップグレードすると、頻繁に再発生します。
ベンジョン、2017年

27

iOSシミュレータバージョン7.0を使用しています。シミュレーターの実行中に、iOSシミュレーター->コンテンツと設定のリセット...に移動し、そこからシミュレーターをリセットしました。それは私にとってトリックをしたようです。お役に立てば幸いです。


4
iOS7でも機能しますが、シミュレータのウィンドウスケールを変更すると、ハードウェアキーボードへの応答が再び停止します。
iOSモンスター

これはキーボードを再起動する最良の方法です
Gajendra K Chauhan 14

iOS Simulator 10.0での使用Hardware -> Erase All Content and Settings...
Nikolai R Kristiansen

17

これは、キーボードショートカットを使用してシミュレータの向きを変更したためです。Macキーボードでcmdを押すだけで、入力を開始できます。


2
私の意見では、これが最良の答えです。
チャックH

1
それは約半分の時間で動作します。その残りの半分、他の何かがそれを引き起こしました、そしてこれはトリックをしません。
arik

1
上記の解決策をすべて試しましたが、cmdと入力することで一日を節約できました。
Renatoが

8

私がしなければならなかったのは、シミュレーターを終了してもう一度起動することだけでした


4

問題は、キーボードが表示され、キーストロークが検出されないことでした。そして私は解決策を見つけました:

キーボードを終了する必要はありません。

ハードウェア->キーボード->ハードウェアキーボードを直接接続してみてください


3

削除com.apple.iphonesimulator.plistも私にとってはうまくいったが、私はそれを隠しフォルダ内に配置する必要があった/Users/[yourusername]/Library/Preferences/


7
実際には、「〜/ライブラリ/ Preferences」のチルダ記号「〜」は、ターミナルの/ Users / [yourusername]に変換されます。これは、ホームディレクトリのUNIXパスの便利な特殊文字です。
Trond Hatlen 2013

1

シェル/コマンドライン/ジェンキンス/ 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"

デバイスIDは、デバイス名に基づいて、xcrun / simctlを介して見つけることができます。

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


0

React Nativeアプリを開発していて、iOSシミュレーターから更新(⌘R)またはリモートデバッグを有効にできない()場合⌘D、他のキーボード入力は機能しますが、デバッグビルド構成を実行していることを確認してください。これは次の方法で確認できます。

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

私はここからこのヒントを得ました


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.