OGeek|极客世界-中国程序员成长平台

标题: ios - 为什么我的 Swift 类的扩展在定义文件之外不可见? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 19:11
标题: ios - 为什么我的 Swift 类的扩展在定义文件之外不可见?

我的 CoreData 模型有一个 Xcode 生成的 NSManagedObject 类。

@objc(SomeClass) class SomeClass : NSManagedObject { /* ... */ }

它在一个名为“SomeClass.swift”的文件中定义。我想扩展这个类,所以我创建了“SomeClassExtension.swift”。我这样定义扩展名:

extension SomeClass {
    class func typeMethod1() {}
    func instanceMethod2() {}
}

这些扩展方法可以在这个定义文件中使用,但它们在它之外是不可见的。是什么导致了这个问题?



Best Answer-推荐答案


听起来您的新文件 (SomeClassExtension.swift) 没有包含在正确的目标中。通过在 Xcode 中选择文件,然后打开“文件检查器”(查看菜单 > 实用程序 > 显示文件检查器)来仔细检查文件的目标成员资格。确保在 Target Membership 标题下检查了正确的目标。

关于ios - 为什么我的 Swift 类的扩展在定义文件之外不可见?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42688508/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4