xcode - 关于swift3.0的类目问题

查看:86
本文介绍了xcode - 关于swift3.0的类目问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

在swift中,我在使用类目调用的时候出现了一个错误,求解答:

Use of instance member 'creatImageWithColor' on type 'UIImage'; did you mean to use a value of type 'UIImage' instead?

代码是 我直接创建了file.swift
在里面加了类目

extension UIImage {
    // 颜色直接换换成图片
    open func creatImageWithColor(_ color: UIColor, _ size: CGSize) -> UIImage {
        let rect = CGRect(x: 0, y: 0, width: size.width, height: size.height)
        // create a 1 by 1 pixel context
        UIGraphicsBeginImageContextWithOptions(rect.size, false, 0)
        color.setFill()
        UIRectFill(rect)
        let image: UIImage? = UIGraphicsGetImageFromCurrentImageContext()
        UIGraphicsEndImageContext()
        return image!
    }
}

然后在VC中调用

        let editBtn = UIButton.init(type: .custom)
        editBtn.frame = CGRect(x:10, y:8, width:SCREEN_WIDTH - 20, height:44)
        editBtn.layer.cornerRadius = 8
        editBtn.layer.masksToBounds = true
        editBtn.setTitle("编辑资料", for: .normal)
        editBtn.setTitleColor(UIColor.white, for: .normal)
        editBtn.setBackgroundImage(UIImage.creatImageWithColor(UIColor.black, CGSize(width:10, height:10)), for: .normal)
          // 这里出现了 开始发的那个警告 求怎么解决
        editBtn.addTarget(self, action: #selector(editNow), for: .touchUpInside)

解决方案

你的类函数/方法前要加关键词 static,才能直接用类名调用。

这篇关于xcode - 关于swift3.0的类目问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆