UIScrollView не прокручивается после явного обновления размера контента из пользовательского класса - PullRequest
0 голосов
/ 08 октября 2018

У меня есть пользовательские UIScrollView и XIB.

class DetailsVehicleView: UIScrollView {
   //Created to force the updated content size.
    public func updateContentSize(){
        print("ScrollView  Pre: \( self.contentSize) ")
        var contentRect = CGRect.zero

        for view in self.subviews {
            contentRect = contentRect.union(view.frame)
        }
        self.contentSize = contentRect.size

        print("ScrollView Post: \( self.contentSize)")
    }
}

enter image description here

Я добавляю это к представлению UIViewController, встроенному в UITabBarController

class VehicleInfoViewController: UIViewController {

    var dvv : DetailsVehicleView!

    override func viewDidLoad() {
        super.viewDidLoad()

        let subviewArray = Bundle.main.loadNibNamed("DetailsVehicleView", owner: self, options: nil)
        dvv = subviewArray![0] as? DetailsVehicleView
        dvv.frame = self.view.frame

        self.view.addSubview(dvv)

    }

    override func viewWillAppear(_ animated: Bool) {
        super.viewWillAppear(animated)
        dvv.updateContentSize()
    }
}

enter image description here

Я не могу заставить UIScrollView прокручивать его содержимое.

Даже после того, как я явно вычислю значение.Я вижу полосы прокрутки, но ничего не движется.

ScrollView Pre: (0.0, 0.0) 
ScrollView Post: (375.0, 742.0)

enter image description here

Кто-нибудь видит, что я делаю неправильно

...