【问题标题】:How to import a Cocoa Touch Framework written in Swift to a .pch file?如何将用 Swift 编写的 Cocoa Touch 框架导入 .pch 文件?
【发布时间】:2015-04-15 07:07:06
【问题描述】:

我创建了一个 Swift 框架,我想将它导入到我在 Swift 项目中创建的每个类中。我不想在任何地方手动输入import 语句。我该怎么做?

在 Objective-C 中,这与在预编译的头文件(.pch 文件)中放置一个 #import 语句相同。

我尝试了什么

  • 使用 Cocoa Touch Framework 模板创建一个新的 Xcode 项目,用 Swift 编写我的所有代码。
  • 我在框架中的所有扩展和方法都有public 关键字。
  • 将框架的 .xcodeproj 添加到我的应用的 Xcode 项目中。
  • 在目标依赖项中添加.framework
  • 在我的应用项目中创建一个 .pch 文件(也是用 Swift 编写的)。
  • 在 .pch 文件中写入 <FrameworkName/FrameworkName.h>。这并没有解决问题,而且有点没有意义,因为我并没有真正在框架项目内的FrameworkName.h 中导入任何内容。

【问题讨论】:

  • 它是纯 Swift 项目还是混合 ObjC-Swift?
  • 框架是 Swift-only,应用也是 Swift-only。
  • 据我所知,目前还没有解决办法。您不能在所有 Swift 类中自动导入框架,就像在 ObjC 中使用 PCH 文件一样。我知道的唯一解决方案是在桥文件中导入框架,然后在任何地方都可以访问,但在纯 Swift 项目中,您没有此解决方案可用。

标签: ios swift


【解决方案1】:

您可以手动添加 .pch 文件,然后可以在 .pch 文件中导入常用文件。欲了解更多信息,请参阅下面的链接

Add new .pch file

看这张图片

【讨论】:

  • 我从我的项目中创建了一个 .pch,但是如何从中导入我的 Swift 框架?
  • @Matt 请查看对您有帮助的给定链接,因为每个步骤都在那里定义。
  • 恐怕你误会了。我不只是询问如何创建一个 .pch 文件来预导入同一项目中的所有文件。我在询问如何导入我在纯 Swift 中构建的 Cocoa Touch Framework,以及如何在 .pch 中导入它,这样我就不必在每个文件中都导入它。请注意,如果一个框架是使用纯 Swift 构建的,那么整个框架就没有一个 .h 文件。
  • @Matt 你可以#import UIKit 看看我编辑的答案
猜你喜欢
  • 1970-01-01
  • 2014-11-17
  • 1970-01-01
  • 2016-05-04
  • 1970-01-01
  • 2018-04-15
  • 2018-06-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多