[英]UIView extension in Swift
我已经将UIView
extension
放置在以swift编写的实用程序类中。
但是,当我尝试从扩展名中调用方法时,
编译器告诉我
成员不存在
这是我的扩展名:
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
有关实用程序类的信息,或者我的代码可能有什么问题?
您正在扩展UIView
。 不是UIImageView
extension UIImageView {
func addShadow() {
layer.shadowColor = UIColor.black.cgColor
layer.shadowOffset = CGSize(width: 0, height: 0)
layer.shadowOpacity = 0.5
layer.shadowRadius = 5
clipsToBounds = false
}
}
另外请直接使用UIImageVIew
,而不是UIImage
假设您的评论,我认为您正在尝试修改MKAnnotationView
。 如果是这样,这是一个可以帮助您的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.