iOS8使用Storyboard自定义键盘

13

有没有人知道如何在Xcode6中使用storyboards创建自定义iOS键盘?我已经使用单个应用程序模板完全使用代码构建了一个键盘,它可以正常工作,但是我想使用storyboards构建另一个键盘,因为我认为这样会更容易。

无法弄清楚如何将storyboard连接到KeyboardViewController.m?有人知道吗?并且能提供一组步骤来完成这个过程吗?谢谢!

2个回答

15

是的,这是完全可能的。 一旦您创建了目标扩展,请右键单击并添加一个新的Storyboard。在此Storyboard中,您必须将自定义类定义为KeyboardViewController。

然后,还有一件事情需要注意:您应该在扩展info.plist文件的NSExtensionAttributes中添加名为您刚创建的Storyboard名称(不带扩展名)的NSExtensionMainStoryboard,并从中删除NSExtensionMainClass属性。

稍作整理和运行,就大功告成了!使用Storyboard的键盘已经完成了! 希望这可以帮助到您!


2
似乎没有NSExtensionMainClass,而只有NSExtensionPrincipalClass,所以这对我来说并不真正起作用。 :/ - Bob
我删除了NSExtensionPrincipalClass而不是NSExtensionMainClass,这样就可以工作了。我在苹果的文档中没有找到关于NSExtensionMainClass的参考。 - dwestgate

9
在扩展中,在 info.plist 文件内,NSExtension 字典下添加一个名为 NSExtensionMainStoryboard 的新项,根据你的 storyboard 名称设置名称,然后删除 NSExtensionPrincipalClass
注:在 Xcode 6.4 中进行了测试,使用 Swift。

同时请确保:添加一个调用self.advanceToNextInputMode()的按钮,并设置“Storyboard入口点”,否则无法启动键盘。 - oOEric

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