Swift 切换当前图像和上一图像:UIImageView
当我按下按钮时,我尝试在uiimageview上切换图像。为了确保uiimageview切换与给定的外部数据(例如URL、图像资产名称)无关,我是否需要应用自定义属性来保存以前的图像而不考虑网络条件 下面是我的工作Swift 切换当前图像和上一图像:UIImageView,swift,uiimageview,extension-methods,Swift,Uiimageview,Extension Methods,当我按下按钮时,我尝试在uiimageview上切换图像。为了确保uiimageview切换与给定的外部数据(例如URL、图像资产名称)无关,我是否需要应用自定义属性来保存以前的图像而不考虑网络条件 下面是我的工作 extension UIImageView { func zoomIn(originalImage: UIImage?, finalImage: UIImage?, duration: TimeInterval, delay: TimeInterval = 0.0)
extension UIImageView {
func zoomIn(originalImage: UIImage?, finalImage: UIImage?, duration: TimeInterval, delay: TimeInterval = 0.0) {
self.image = originalImage
updateConstraints()
guard let image = finalImage else { return }
let imageView = UIImageView(image: image)
imageView.contentMode = .scaleAspectFill
imageView.translatesAutoresizingMaskIntoConstraints = false
addSubview(imageView)
NSLayoutConstraint.activate([imageView.topAnchor.constraint(equalTo: self.topAnchor),
imageView.bottomAnchor.constraint(equalTo: self.bottomAnchor),
imageView.leadingAnchor.constraint(equalTo: self.leadingAnchor),
imageView.trailingAnchor.constraint(equalTo: self.trailingAnchor)])
imageView.alpha = 0
imageView.transform = CGAffineTransform.init(scaleX: 0.001, y: 0.001)
UIView.animate(withDuration: duration,
delay: delay,
animations: {
imageView.transform = CGAffineTransform.identity
imageView.alpha = 1
}) { (true) in
}
}
}
如果图像视图从未高亮显示(即,它不在表或集合视图单元格中),则可以在图像视图的
高亮显示图像中保留一个图像。或者您可以编写一个UIImageView子类来维护额外的图像属性。