ios - Swift 中的有限区域 Pinchview

标签 ios swift pinchzoom pinch uipinchgesturerecognizer

我在 ImageView 上有一个标签,并且它们都在一个 View 中。可通过以下代码捏住标签。然而,它也可以在 ImageView 之外进行捏合。我希望 ImageView 之外的区域不可见(例如在 Whatsapp 或 snapchat 中。屏幕之外的文本不可见,我希望仅在 ImageView 区域中看到)。我不确定,但我想它会以某种方式通过将 View 置于前面的功能来完成。只是我不知道该怎么做

  func handlePinch(recognizer: UIPinchGestureRecognizer) {
        if let view = recognizer.view as? UILabel {
            let pinchScale: CGFloat = recognizer.scale
            view.transform = view.transform.scaledBy(x: pinchScale, y: pinchScale)
            recognizer.scale = 1.0
        }
    }

最佳答案

我通过从 imageview 创建 View (左上、右上和下侧)来完成此操作,并将除具有 imageview 的 View 之外的所有 View 设置到前面。我在 Storyboard中创建了前三个 View (左侧、右侧和底部),并在代码中创建了最后一个 View (上方),因为我需要先隐藏状态栏,然后在其顶部创建一个 View 。

 customView = UIView(frame: CGRect(x: 0, y: 0, width: 440, height: 20))
        customView.backgroundColor = UIColor.white
        self.view.addSubview(customView)
        self.view.bringSubview(toFront: view_main)
        self.view.bringSubview(toFront: view2)
        self.view.bringSubview(toFront: view3)
        self.view.bringSubview(toFront: customView)

关于ios - Swift 中的有限区域 Pinchview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40892142/

相关文章:

swift - 带有 Swift 的 UICollectionViewCell 中的 UIScrollView

ios - 如何更新嵌入到 UIKit 中的 SwiftUI View ?

ios - 不能在我的 ios 以外的 facebook 墙上发帖

swift - 为什么 Apple 的枚举类型的打印方式与 Swift 的不同?

swift - 如果文件不存在,如何在文档文件夹中创建文件?

javascript - 如何在 Nativescript 和纯 JS 中禁用 iOS 缩放和双击缩放

ios - 使 UITextField 仅在 Swift 中接受小字母?

ios - 带有大标题导航的 UITableView UIRefreshControl 不会粘在顶部 - 它会移动

ios - 使用 Swift (AutoLayout) 修复 UIImage 的宽度和高度

java - 如果双指同时触摸屏幕,则无法捏合缩放