使用xib而不是storyboard的iOS App Extension

时间:2014-07-26 01:27:11

标签: ios8 ios-app-extension

我正在为Today视图编写iOS 8 App Extension(小部件)。 xcode中的默认模板附带一个故事板。如何使用xib文件而不是故事板?

documentation说这是可能的,但我似乎无法弄清楚如何更改info.plist文件以加载xib。

3 个答案:

答案 0 :(得分:13)

您需要做的就是添加“NSExtensionPrincipalClass”和您想要的类名。

答案 1 :(得分:8)

正如我最近发现的那样艰难 - 请注意' NSExtensionPrincipalClass' 必须直接位于' NSExtension'键。例如班级ShareViewController

<key>NSExtension</key>
<dict>
    <key>NSExtensionPrincipalClass</key>
    <string>ShareViewController</string>
    ...
</dict>

答案 2 :(得分:0)

默认情况下,Today模板提供以下Info.plist键和值(此处显示的是OS X目标):

<key>NSExtension</key>
<dict>
    <key>NSExtensionPointIdentifier</key>
    <string>com.apple.widget-extension</string>
    <key>NSExtensionPrincipalClass</key>
    <string>TodayViewController</string>
</dict>

如果使用自定义视图控制器子类,请使用自定义类名替换NSExtensionPrincipalClass键的TodayViewController值。

的iOS。如果您不想使用模板提供的故事板文件,请删除NSExtensionMainStoryboard键并使用视图控制器的名称添加NSExtensionPrincipalClass键。

您创建“今日”窗口小部件所做的大部分工作都涉及设计UI并实现执行自定义功能的视图控制器子类。

BY APPLE GUIDELINES:-->click to view