私はbothポートレートモードとランドスケープモードをサポートする基本的なiOSアプリに取り組んでいます。 iPhoneシミュレーターのキーボードが横向きで開いていて、アプリをポートレートモードに切り替えると、Macの物理キーボードを使用してテキストフィールドに何も入力できなくなります。
これを経験した人はいますか?既知のバグですか?
私のために働いた素晴らしいソリューションを見つけました。
シミュレーターを開き、[ハードウェア]メニューの[キーボード]に3つのオプションがあります。
Xcode 9では、iPhone 8+シミュレーターで同じ問題に直面しました。この方法で解決できました。
~/Library/Preferences/com.Apple.iphonesimulator.plist
ファイルCaptureKeyboardInput
値をYES
に設定します入力を開始する前に(スクリーンキーボードが表示されたら)、コマンドキーだけを押してから離します。これにより、シミュレータでキーボードが再び有効になります。
シミュレーターメニュー>>ハードウェア>>キーボード>>ハードウェアキーボードから接続
OR
⌘ + ⌂ + K
を押すだけです
IOSシミュレーターを起動し、Hardware > Keyboard > Connect Hardware Keyboard
を有効にします。
(CMD + SHIFT + K
-XcodeのCleanと同じショートカットを押して、誤って無効にしている可能性があります)
シミュレーターで、デバイスを変更してみてください。次に、元のデバイスでアプリを再度実行します。それは私のために働いた。
最初の手順だけでは機能しない場合は、オプションのチェックを外します。iOSはOS Xと同じキーボードレイアウトを使用してから、デバイスを変更します。
私はそれがうまくいくまでランダムなことをすることを考え出した。猿の修正。
これらの提案はどれも役に立たなかった。 iOS Simulatorアプリを閉じて再起動しました。それは私のためにそれを修正しました。
同じ問題が発生しています。 Command-LeftArrowおよびCommand-RightArrowショートカットを使用してシミュレーターでデバイスを回転させると、この問題はシミュレーターで「スタック」するコマンドキーに関連していると思います。
Appleの修正を待つ間、これを回避する方法の1つは、キーボードショートカットではなくメニューオプションを選択してデバイスを回転させることです。これにより、デバイスが回転し、キーボードが動作状態。
以下のコマンドを2回繰り返すと私にとってうまくいきました!!
CMD + Shift + K
Xcode(5.0)の新しいバージョンをインストールしましたが、iOSシミュレーターのキーボードが最初の起動時に機能しませんでした。シミュレータを再起動するだけで役立ちました。
問題ではありません。これらの簡単な手順を実行してください。
シミュレーターを開く
先頭に移動すると、オプションハードウェアが表示されます。これをクリックします。
ハードウェアをクリックすると、いくつかのオプションが表示され、1つのオプションはキーボードです。
[キーボード]オプションをクリックすると、3つのオプションが表示されます。
Macボタンキーボードを使用する場合は、[ハードウェアキーボードの接続]の2番目のオプションを選択します。
モバイルタップキーボードを使用する場合は、3番目のオプションを選択します。
最初のオプションは、コードを使用してキーボードを選択する人向けです。
すべての作業をお楽しみください。
私にとっては、シミュレータを選択し、ハードウェアを選択->キーボード->ハードウェアキーボードを接続します。
それは私のために働いた。
ちょうどあなたが言ったことを試しただけで、それは本当です。風景に移動してから再び肖像画に移動しても機能しません。私のアプリも変更されていないため、ロジックはありません。また、デバイスでは正常に動作します。したがって、シミュレーターのバグです。
これを使用してAppleに報告できます:
私にとって本当に有効なソリューションは、シミュレーターを削除して新しいものを作成したことです。このバグは、キーボードからシミュレーターへのすべてのショートカットが機能しない場合によく発生すると思います。
シミュレーターを終了し、ターミナルで次のコマンドを実行します。
rm ~/Library/Preferences/com.Apple.iphonesimulator.plist
iPhone 6シミュレータに問題がありましたiPhone 7に変更しました。iPhone7では作業を続行できます。
Macのキーボードがまだ接続されていないすべてのオプションと設定が正しい場合、原因の1つはデバイスの回転です
もし、あんたが CMD + ← または → シミュレータの起動時にデバイスを早めに回転させるため、Macキーボードはまったく機能しません。メニュー設定を変更しても何も起こりません!デバイスを回転させる前に、Macキーボードを使用してデバイス内に入力すると役立つ場合があります。
「デバイスへのメニューショートカットの送信」をオフにして、シミュレータを再起動すると役立つ場合があります。信頼できる、再現可能な動作が得られたら更新します。
Macキーボードは、Simulatorを実行して終了する時間の約半分で動作します。これらすべての年の後に50%は悪くない!?
Xcode 9.3を搭載したバージョン10.0(SimulatorApp-851.2 CoreSimulator-518.19)では、何も機能しませんでした。ハードウェア->すべてのコンテンツと設定の消去->消去でシミュレーターをリセットします。プロジェクトをクリーンアップし、シミュレーターで実行します。キーボード接続が復活しました。
Plistlibと呼ばれるplistファイルを編集するためのライブラリがあります。ここに私のコードがあります:
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")
これはplistファイルを読み取り、ConnectHardwareKeyboard
値をNo
に変更してから、新しいファイルを同じ場所に書き込みます。これでうまくいきますが、もっと良い方法があれば教えてください。私はまだコーディングの初心者です。
シミュレータを再起動するだけでうまくいきました。
シミュレータを回転させるたびにこの問題に遭遇しました。ハードウェアオプションを変更するための提案に従っても、iOSシミュレーターを再起動することはできません。
回転してMacキーボードが機能するようになってから編集領域をクリックするトリックを見つけました。
Main.storyboard
を削除し、コードでメインウィンドウを作成した後、この問題に遭遇しました。 Main.storyboard
を使用するように戻すと、修正されました。
私の場合、シミュレーターを開いて、Macのメニューで[ハードウェア]をクリックし、キーボードオプションに移動して、ソフトウェアキーボードの切り替えを選択します。 as shown
これを行うには、iPhone 8+シミュレーターiOS 11.2でこれを行いました。1.メニュー->ハードウェア->すべてのコンテンツと設定を消去します。 2. xcodeから派生データを削除します。 Xcode->環境設定->場所->「詳細」ボタンの左側にある右矢印をクリックします。
非常に多くのことを行った後、私のマシンを再起動して、以下を有効にしました。
シミュレーターでこれを有効にする:ハードウェア->キーボード->ハードウェアキーボードの接続
CMD + SHIFT + Kを使用すると、キーボードが自動的にアクティブになります。