由于“内部”保护级别 swift 4,无法访问扩展初始值设定项

The*_*ker 2 extension-methods access-levels ios swift

我的框架内的扩展中有一个方便的初始化程序。我想在我的项目的另一个扩展中使用它。它授予了我可以访问的所有内容的公共访问权限,但编译器一直说“由于‘内部’保护级别,初始化程序无法访问”......

这是我在框架中的扩展:

public extension UIColor {
    public convenience init(hex: Int) {
        self.init(red:(hex >> 16) & 0xff, green:(hex >> 8) & 0xff, blue:hex & 0xff)
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我在我的项目中的扩展:

import myFramework

extension UIColor {
    class var backgroundGrey: UIColor {
        return UIColor(hex: 0xe3e8eb)
    }
}
Run Code Online (Sandbox Code Playgroud)

错误是当我调用 UIColor(hex) 时。

你知道这里有什么问题吗?

编辑:我添加了框架导入

Rob*_*ier 5

通常,这里的答案是清理项目。如果这不起作用,请删除 DerivedData。如果这不起作用,那么开始简化项目,只做这件事(导入框架并访问扩展),因为项目中有其他东西干扰。