在iOS上使用Storyboard显示自定义键盘

4

好的,我正在为Xcode 7.1开发一个iOS自定义键盘,但是遇到了问题...

使用NSExtensionPrincipalClass这个默认解决方案是可以的,但当我使用Storyboard并将plist中的该条目替换为"NSExtensionMainStoryboard"时,它只在模拟器上工作,而在实际设备上却无法正常使用... 在实际设备上,尝试选择它时只会切换回之前的键盘...

在其他SO帖子中,我看到有人说将RequestsOpenAccess设置为TRUE对他们有效,但这里没有运气...

下面是我的扩展条目在plist中的显示...

<key>NSExtension</key>
<dict>
  <key>NSExtensionMainStoryboard</key>
  <string>Keyboard</string>
  <key>NSExtensionAttributes</key>
  <dict>
    <key>IsASCIICapable</key>
    <false/>
    <key>PrefersRightToLeft</key>
    <false/>
    <key>PrimaryLanguage</key>
    <string>en-US</string>
    <key>RequestsOpenAccess</key>
    <true/>
  </dict>
  <key>NSExtensionPointIdentifier</key>
  <string>com.apple.keyboard-service</string>
</dict>

我还没有分享任何剩余的代码,因为在模拟器上可以工作,所以我猜这是某种设置问题或错误?

在 Xcode 中,我可以看到日志:

插件'xxx'已中断

插件'xxx'无效

有关我漏掉了什么的任何想法?任何帮助将不胜感激...


我目前也遇到了同样的问题。你解决了这个问题吗?还是NSExtensionMainStoryboard在键盘扩展中不起作用? - PPierson
1个回答

2

我刚刚通过在故事板中查看视图控制器的属性检查器中勾选“是否为初始视图控制器”框来解决了相同的问题。这有道理,因为应用程序需要在启动时找到第一个VC进行初始化。

复选框图像: enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接