如何为我的EXISTING Xcode项目添加复杂功能?

mm2*_*m24 7 ios watchkit xcode7-beta5 apple-watch-complication

如何为我的EXISTING Xcode 7项目添加复杂功能?

看WWDC视频2015会议209,显示增加复杂性的方式是创建一个新的项目,并在复杂性.这适用于该情况,但我如何在现有项目中添加它们?

在此输入图像描述

我在XCode对象选择器中找不到复杂控制器(见下文):

在此输入图像描述

为什么会这样?

Gam*_*int 6

添加新的临时监视扩展目标并检查并发症复选框.将复杂扩展属性从这个新的info.plist(CLKComplicationSupportedFamilies,WKExtensionDelegateClassName和CLKComplicationPrincipalClass)复制到旧的手表扩展信息info.plist中.一旦你这样做,你将看到复杂功能家庭列表.

我还将ExtensionDelegate和ComplicationController类移动到旧的手表扩展中,并将目标成员身份从新的手表扩展名更改为旧手表扩展名.

在旧手表扩展资产文件中右键单击并添加复杂图像集.

另外"tom_witkin 2015年7月23日上午8:50(对breville的回应)ClockKit框架仅适用于watchOS 2,而不适用于iOS.因此,现有的WatchKit应用程序不支持复杂功能,其中扩展程序在iPhone上运行."

因此,当从wos1移动到wos2时(如果编译期间出现警告),建议的构建设置会发生变化,并在旧的扩展和监视应用程序构建设置中生成WATCHOS_DEPLOYMENT_TARGET = 2.0.

如果不存在,请为旧手表扩展添加TARGETED_DEVICE_FAMILY = 4.


Dmy*_*iak 2

Interface Builder 中不存在像复杂控制器这样的东西,它是一个抽象实体。您应该使用ClockKit 框架来注册时间线条目,只有在此之后,这些条目才可以通过表盘上支持的复杂功能使用。

您可以在 Watch Extension 目标配置选项卡上配置支持的复杂功能类型 - 只需选中必要的复选框即可。并且有一个技巧,您应该使用下一个方案指定复杂控制器的名称:$(PRODUCT_MODULE_NAME).YourComplicationControllerName