2014-11-06 133 views
4

考虑:斯威夫特命名空间冲突

  • 一个名为FrameworkA定义类型Thing斯威夫特框架。
  • 一个名为FrameworkB的Swift框架,它也定义了类型Thing和类型FrameworkA
  • 在同一个Swift文件中导入两个框架的应用程序。

如何在文件中引用FrameworkA.Thing?以下行失败,Thing is not a member of FrameworkA

let t : FrameworkA.Thing? = nil 

回答

5

这似乎是一个Swift错误。作为一种变通方法,您可以创建一个导入仅FrameworkA并定义了应用新雨燕文件typealiasThing

import FrameworkA 

typealias ThingA = Thing 

然后需要导入这两个框架的文件中,您使用ThingA,而不是FrameworkA.Thing