【问题标题】:How do I type using my keyboard on the iphone simulator?如何在 iphone 模拟器上使用键盘打字?
【发布时间】:2011-04-26 15:31:13
【问题描述】:

我曾经可以在启动 iPhone 模拟器后使用真正的 mac 键盘打字。在使用大量文本进行测试时,使用屏幕模拟器键盘打字非常糟糕。

无论我做什么,我都无法再让我的键盘在模拟器中输入。即使我打开了“模拟硬件键盘”,它也不会输入任何内容。有人可以告诉我我做错了什么吗?没有办法用真键盘打字了吗?

【问题讨论】:

  • @user189924:请用接受的答案标记以前的问题,人们帮助过你。它可以帮助社区并激励其他人回答您未来的问题。
  • 所有 5 个当前答案都有效,但 VERY BEST 答案是@SGS 当前位于底部的答案。
  • 嗨@strange - 从 xCode 6 开始,选择的答案似乎不是最好的方法。你会考虑重新评估你的选择吗?关于使用模拟器菜单选项和覆盖键盘快捷键的两个答案是slamor'smy own。但是,如果您对当前的选择感到满意,请保留该选择。
  • ⇧⌘K 正如@Benjohn stackoverflow.com/a/26715382/242933所解释的@
  • 同样的事情发生在我身上并以这种方式解决-stackoverflow.com/a/47696048/413877

标签: iphone xcode ios-simulator


【解决方案1】:

尝试删除 iPhone 模拟器首选项文件。当我的 iPhone 模拟器停止响应击键时,这修复了它。

  1. 退出模拟器。
  2. 转到 finder 并按 (command+shift+G) 然后导航 ~/Library/Preferences
  3. com.apple.iphonesimulator.plist 移至回收站。
  4. 再次尝试在模拟器中启动您的 iPhone 应用。

【讨论】:

  • 当我旋转或缩放时,我失去了能力。有永久的解决方案吗?
  • @Philosophistry 当我使用⌘→⌘← 旋转时,我也失去了打字的能力。我发现我需要使用菜单条目来旋转它。
  • 模拟器中似乎存在一个错误,它在使用旋转快捷键后停止响应键盘。要解决此问题,请自行点击 ⌘ Cmd 键。它应该再次接受输入。另见:stackoverflow.com/questions/18979510/…
  • 我没有删除plist文件,而是打开它并将字段EnableKeyboardSync更改为YES。然后我重新启动我的模拟器。
  • 从 XCode 6.0.1 开始,此答案不再正确。请参阅下面的@slamor 和 Keith Smiley 的回答。
【解决方案2】:

在 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

而且,你知道,我最近两个月真的很痛苦,直到找到它,现在很方便))

【讨论】:

  • 谢谢!我一直在努力将我的 loooong 凭据输入应用程序,就像一个星期一样! :)
  • 不客气!顺便说一句,这些热键也可以在 OS X Yosemite 下的最新 xCode 6.1 中完美运行。
  • 真的很有帮助,我也挣扎了几天。
  • 这是一个比公认的答案更好的解决 Apple 错误的方法。
  • 这是正确的方法,我苦苦挣扎了几天让模拟器使用物理键盘。我不确定这是否是一个错误,从 Apple 的角度来看,它可能是一个功能,允许在基于点击的输入或外部硬件之间进行切换
【解决方案3】:

不要丢弃 iPhone 模拟器首选项文件。没有必要这样做。

查看模拟器的菜单Hardware ➔ Keyboard。菜单选项是:

  1. iOS 使用与 OS X 相同的布局
  2. 连接硬件键盘⇧⌘K
  3. 切换软件键盘 ⌘K

确保选中选项 2。

如果已选中,请取消选中,然后再次选中(您可能想学习键盘快捷键)。

如果您发现这隐藏了屏幕键盘,但您还希望它显示,请使用选项 3 将其重新打开。

如果旋转模拟器似乎停止了键盘工作,请关闭选项二然后再打开 - 这似乎可以解决问题。

【讨论】:

  • 这对我有用!在扔掉任何东西之前一定要试试这个
  • 距离回答差不多两年了,这是我在 S.O. 上投票率最高的回答,它告诉你关于当代软件工程你需要知道的一切 :-)
  • 出于某种原因,我遇到了同样的问题。我的键盘正在工作,并且在某些时候此设置已更改,并且模拟器中的键盘停止工作。这是解决我在 XCode 8.3 中的问题的答案
  • @sonar0007 当我升级 xCode 时,它​​经常再次发生在我身上。
【解决方案4】:

我正在使用 iOS 模拟器 7.0 版。在模拟器运行时,我转到 iOS Simulator->Reset Contents and Settings... 并从那里重置模拟器。这似乎对我有用。希望对您有所帮助。

【讨论】:

  • 它适用于 iOS7,但是一旦您更改模拟器的窗口比例,它就会再次停止响应硬件键盘。
  • 这是重新启动键盘的最佳方式
  • 在 iOS 模拟器 10.0 上使用 Hardware -> Erase All Content and Settings...
【解决方案5】:

这是因为您使用键盘快捷键更改模拟器的方向。只需在 mac 键盘上按 cmd 即可开始输入。

【讨论】:

  • 在我看来这是最好的答案。
  • 这在大约一半的时间内有效。另一半,是其他原因造成的,这不起作用。
  • 我尝试了上述所有解决方案,但输入 cmd 节省了我的时间。
【解决方案6】:

我需要做的就是退出模拟器并重新启动它

【讨论】:

    【解决方案7】:

    我的问题是键盘正在显示并且未检测到击键。我找到了解决方案:

    您无需退出键盘。

    试试硬件->键盘->直接连接硬件键盘

    【讨论】:

      【解决方案8】:

      删除com.apple.iphonesimulator.plist 也对我有用,但我必须在隐藏文件夹/Users/[yourusername]/Library/Preferences/ 中找到它

      【讨论】:

      • 实际上“~/Library/Preferences”中的波浪号“~”在终端中转换为/Users/[yourusername],它只是unix路径中用于主目录的一个方便的特殊字符。
      【解决方案9】:

      Shell/命令行/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"
      

      可以通过 xcrun / simctl 根据 devoce 名称找到设备 ID:

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

      【讨论】:

        【解决方案10】:

        我遇到了同样的问题并尝试了很多不同的方法,这些方法大部分都有效,但从未确定。最终,我找到了这个。 https://stackoverflow.com/a/26057011/1463604

        【讨论】:

          【解决方案11】:

          如果您正在开发 React Native 应用,并且无法从 iOS 模拟器刷新 (⌘R) 或启用远程调试 (⌘D),而其他键盘输入有效,请确保您正在运行调试构建配置。您可以通过以下方式检查:

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

          我从here 那里得到了这个提示。

          【讨论】:

            【解决方案12】:

            只需重新启动模拟器(关闭并打开应用程序)。

            【讨论】:

              猜你喜欢
              • 2015-02-04
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2018-04-13
              • 2010-10-23
              • 2012-01-21
              • 1970-01-01
              • 2013-09-29
              相关资源
              最近更新 更多