【发布时间】:2019-01-28 20:01:29
【问题描述】:
我在一个用 swift 编写的实用程序类中放置了一个 UIView extension。
但是,当我尝试从扩展调用方法时,
编译器告诉我
该成员不存在
这是我的扩展:
extension UIView {
func addShadow() {
layer.shadowColor = UIColor.black.cgColor
layer.shadowOffset = CGSize(width: 0, height: 0)
layer.shadowOpacity = 0.5
layer.shadowRadius = 5
clipsToBounds = false
}
}
由于UIImage 是UIView 的子类,我想我应该能够通过调用将方法应用于UIViewController 中的自定义MKAnnotation 图像
myImage.addShadow()
但是,我得到错误:
Value of type 'UIImage' has no member 'addShadow'
如果我将方法放在 UIImage 的扩展中,我会得到同样的错误。
我是否必须以某种方式告诉UIViewController 关于实用程序类或我的代码可能有什么问题?
【问题讨论】:
-
我怀疑这是语法问题。您可能需要 UIImageVIEW,但错误提示为 UIImage。
-
你是对的。 annotationview 有 imageView 还是它自己的 imageView
标签: ios swift uiimage swift-extensions