UIScrollView не изменяет масштаб: что мне не хватает? - PullRequest
0 голосов
/ 05 декабря 2018

Я могу прокручивать, но не масштабировать.Я видел много идентично выглядящего кода при поиске, но все же нет увеличения.

pinchGestureRecognizer не nil.

viewForZoomingInScrollView(scrollView: UIScrollView) не вызывается.

scrollViewDidEndZooming(_ scrollView: UIScrollView, with view: UIView?, atScale scale: CGFloat) масштаб отчетов = 1.0.

Что мне здесь не хватает?

(Мы должны делать это программно, а не в IB).

import UIKit

class ScrollViewController: UIViewController, UIScrollViewDelegate {

    var scrollView: UIScrollView!
    var imageView: UIImageView!

    override func viewDidLoad() {
        super.viewDidLoad()

        imageView = UIImageView(image: UIImage(named: "image.png"))

        scrollView = UIScrollView(frame: view.bounds)
        scrollView.backgroundColor = UIColor.black
        scrollView.contentSize = imageView.bounds.size
        scrollView.contentOffset = CGPoint(x: 1000, y: 450)

        scrollView.addSubview(imageView)
        view.addSubview(scrollView)

        scrollView.delegate = self
        scrollView.minimumZoomScale = 0.1
        scrollView.maximumZoomScale = 4.0
        scrollView.zoomScale = 1.0
    }

    //delegate
    func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView? {
        return imageView
    }
}

1 Ответ

0 голосов
/ 05 декабря 2018

Вы конвертировали свои коды из более старой версии Swift?Поскольку функция делегата для возврата вида для масштабирования теперь

func viewForZooming(in scrollView: UIScrollView) -> UIView?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...