使用UIColor扩展名模糊地使用'methodName'

时间:2014-06-15 12:18:30

标签: swift

我正在尝试定义UIColor

的扩展名
import UIKit

extension UIColor {
    convenience init(rgb:UInt){
        let red:CGFloat = CGFloat((rgb & 0xFF0000) >> 16)/255.0;
        let green:CGFloat = CGFloat((rgb & 0xFF00) >> 8)/255.0;
        let blue:CGFloat = CGFloat(rgb & 0xFF)/255.0;

        self.init(red: red, green: green, blue: blue, alpha: 1.0)
    }

    class func applicationGreenColor() -> UIColor {
        return UIColor(red: 0.255, green: 0.804, blue: 0.470, alpha: 1)
    }
}

每当我尝试使用任何添加的函数时,我都会遇到以下错误: 模糊地使用'applicationGreenColor'。

我甚至试图添加非常简单的方法,如:

func info(){
    println(self.description);
}

导致相同的编译错误:模糊地使用'info'。

因此从RGB单元初始化工作正常。

我为String和其他类添加了多个扩展,但任何内容都适用于UIColor。谁能告诉我我做错了什么?

更新 - 我可以看到我的UIImage扩展方法中定义的所有方法在代码完成建议中出现两次。

1 个答案:

答案 0 :(得分:4)

您可以为两个应用程序目标构建该文件,一个是应用程序本身,另一个是可能的嵌入式框架。检查该文件及其正在使用的文件检查器,然后查看正在使用该类的文件的导入。