ios - 图片放大时如何隐藏背景

标签 ios swift uiimageview uitapgesturerecognizer

我有一个点击手势识别器连接到我的 ImageView 。当点击图像时,它会变成全屏,当再次点击时,它会消失。用户可以缩放图像,但是当用户按住图像并四处移动时,它会显示背景 View 。我想隐藏背景,以便在图像被关闭之前看不到 View 。我认为我提供的图片比文字解释得更好。

var newImageView: UIImageView!



@IBAction func imageTapped(_ sender: UITapGestureRecognizer)  {
    self.navigationController?.setNavigationBarHidden(true, animated: true)

    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 = .scaleAspectFit
    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) {
    self.navigationController?.setNavigationBarHidden(false, animated: true)
    sender.view?.removeFromSuperview()
}

regular view

enter image description here enter image description here

最佳答案

您可以使用 backgroundElement.isHidden = true 属性简单地隐藏元素。关闭 View 后,您可以使用 backgroundElement.isHidden = false 重置背景。

关于ios - 图片放大时如何隐藏背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43905052/

相关文章:

javascript - JS区分iPhone上的点击和滚动

iphone - "Cannot convert ' float ' to float**"错误

ios - 如何在 iOS 模拟器上本地化 "<AppName> Would Like to Send You Notifications"权限对话框?

ios - 在 UITextView 的属性文本中的最后一个字符之后调用链接方法

ios - Swift:TableviewController 中的三个原型(prototype)单元格将无法查看

objective-c - 在 UIImageView 的图像 : which rect to use? 上调用 drawInRect

ios - 旋转改变 UIImageView 框架。如何避免这种情况?

facebook - 无法使用 swift 在 Facebook 上发布二维码图像

ios - 如何从 IOS 的启动屏幕检查 NsUserDefaults?

ios - Swift Facebook 登录错误 "Apple Mach-O Linker Error"