小编Fed*_*esa的帖子

使用滚动视图通过 Swift 放大图像

我正在从 Apple 的“App Development in Swift”学习 Swift。

我遇到了约束问题,特别是在第 593 页的“我间谍”实验室中。它基本上希望您创建一个滚动视图,其中包含一个图像视图并制作它以便您可以放大图像并滚动它,例如在打开照片时的照片应用程序中。

这本书说要使滚动视图和图像视图与带有约束的屏幕一样大,所以我将顶部、底部、前导和尾随约束添加为 0,并且它工作正常。

当我添加图像视图时,我开始遇到问题。如果我设置与滚动视图相同的约束,它会说它缺少 X 和 Y 位置的约束,并且它不起作用。如果我确实添加了这些约束,因此我将其水平和垂直对齐,图像只会拉伸到屏幕,但我仍然无法缩放或滚动。

视图控制器的代码是:

class ViewController: UIViewController, UIScrollViewDelegate {

@IBOutlet weak var scrollView: UIScrollView!
@IBOutlet weak var imageView: UIImageView!

override func viewDidLoad() {
    super.viewDidLoad()
    scrollView.delegate = ViewController()
    updateZoomFor(size: view.bounds.size)
}

func viewForZooming(in scrollView: UIScrollView) -> UIView? {
    return imageView
}

func updateZoomFor(size: CGSize){
    let widthScale = size.width / imageView.bounds.width
    let heightScale = size.height / imageView.bounds.height
    let scale = min(widthScale,heightScale)
    scrollView.minimumZoomScale = scale
}

override func didReceiveMemoryWarning() …
Run Code Online (Sandbox Code Playgroud)

interface-builder ios swift

1
推荐指数
1
解决办法
7084
查看次数

标签 统计

interface-builder ×1

ios ×1

swift ×1