【发布时间】:2017-09-23 07:17:41
【问题描述】:
我尝试了许多不同的方法来实现扩展图像和捏拉缩放。我找到了有关如何使用项目中保存的图像执行此操作的教程,但是我正在从 Firebase 检索我的图像。我希望一张图片占据 ProfileViewController 屏幕的一半左右,而其他图片能够扩展整页并且能够缩放。我现在拥有的代码可以做到这一点,但是缩放和位置不干净或易于使用。
var newImageView: UIImageView!
@IBAction func imageTapped(_ sender: UITapGestureRecognizer) {
let imageView = sender.view as! UIImageView
let scrollView = UIScrollView(frame: self.view.frame)
newImageView = UIImageView(image: imageView.image)
newImageView.frame = self.view.frame
newImageView.backgroundColor = .black
newImageView.contentMode = .top
newImageView.isUserInteractionEnabled = true
let tap = UITapGestureRecognizer(target: self, action: #selector(dismissFullscreenImage))
scrollView.addGestureRecognizer(tap)
scrollView.delegate = self
scrollView.minimumZoomScale = 1.0
scrollView.maximumZoomScale = 3.0
scrollView.addSubview(newImageView)
self.view.addSubview(scrollView)
}
func viewForZooming(in scrollView: UIScrollView) -> UIView?
{
return newImageView;
}
func dismissFullscreenImage(_ sender: UITapGestureRecognizer) {
sender.view?.removeFromSuperview()
}
【问题讨论】:
-
截图有什么问题 截图有很多问题。
-
@KKRocks 我还没有设计,我只是专注于如何让每张图片在点击时展开,并且在它已经展开后也能够正确缩放。
-
那你想做什么?
-
@KKRocks 找到一种更有效的方式来显示图像,当我单击图像时,视图和框架完全关闭。
-
使用这个库来缩放 imageView : github.com/jaredsinclair/JTSImageViewController
标签: ios swift xcode uiscrollview uiimageview