适用于iOS和WatchOS应用程序的类?

时间:2016-01-15 14:58:47

标签: ios swift watchkit watch-os-2

有没有办法创建iOS和WatchOS应用程序都可用的类?

我想从单个静态类创建一个模拟数据源。我不想让课程住在iOS应用程序或Watchkit扩展程序中。但是我仍然希望它能够进入整个项目。

如果这不可能,我想让这个课程在iOS应用程序中生活是最好的吗?从那里,我可以将其数据传输到WatchOS应用程序。

3 个答案:

答案 0 :(得分:2)

勾选“文件检查员”的“目标成员资格”下的观看扩展程序选项,以在扩展名下包含该文件:)

答案 1 :(得分:1)

为您希望两个应用程序使用的所有类创建一个框架,并在您想要使用它们时导入该框架

答案 2 :(得分:1)

创建类后,您可以在文件检查器中编辑“目标成员资格”作为另一个提到的答案,让您在每个目标中包含该文件。

此外,由于WatchKit中没有某些类,函数等,您可能需要将 preproccessor宏添加到目标的构建设置中,您可以使用它来定义代码的某些部分。仅适用于手表或iPhone。

您可以在iPhone目标“构建设置”>中定义预处理器宏。 '预处理'(确保在左上角选择'all',而不仅仅是'basic')。 See screen shot for preprocessor macro definition

一旦定义了,就可以使用#ifdef预处理器在代码中使用它们:

#ifdef IS_IPHONE  
// iphone specific code here...
#endif

<强>更新

如下面的评论所述,对于swift,您可以使用以下内容而无需预处理器宏:

#if os(iOS)
// iPhone specific code
#endif