不要在Swift / iOS中跨模块/框架进行子类化

时间:2015-10-01 18:30:04

标签: ios swift

此代码在同一源文件中运行良好:

class SuperClass {
  func sayHello() {
    print("Hello")
  }
}

class MyClass: SuperClass {
}

我现在移动超级班#39;在“我的框架”中对另一个源文件进行分类'嵌入式框架,并将访问控制设置为public:

public class SuperClass {
  public func sayHello() {
    print("Hello")
  }
}

应用源文件:

import MyFramework

class MyClass: SuperClass {
}

然而,我得到了一个"使用未申报的类型' SuperClass'"错误。

" MyFramework"框架必须被识别,因为导入语句不会导致错误(例如,我没有得到#34;没有这样的模块' MyFramework'"错误)。

如果我将应用源文件更改为:

import MyFramework

class MyClass: MyFramework.SuperClass {
}

...然后我得到一个"没有名为' SuperClass'在' MyFramework'"

值得一提的是,MyFramework DOES中的相关源文件已选中Target Membership部分中的框(对于MyFramework,而不是MyFrameworkTests)。

MyFramework已添加到'链接框架和库中。部分。

我尝试了一个干净的构建,并在一个新的空项目中尝试了上面的例子,但我遇到了同样的问题。

如何跨模块/框架进行子类化?

0 个答案:

没有答案