2015-09-10 3 views
0

Я пытаюсь прокручивать содержимое StackView. Я вставил фиктивные представления UIImage, чтобы попытаться заставить его работать, но он не прокручивается. Представления стека и прокрутки уже подключены к IB. Что мне не хватает?Я не могу заставить UIScrollView работать с UIStackView

import UIKit 

class ViewController: UIViewController { 

    @IBOutlet weak var menuStackView: UIStackView! 
    @IBOutlet weak var menuScrollView: UIScrollView! 
    override func viewDidLoad() { 
     super.viewDidLoad() 
     // Do any additional setup after loading the view, typically from a nib. 


     var itemImageView = UIImageView(image: UIImage(named: "splash2")) 
     itemImageView.contentMode = .ScaleAspectFit 
     self.menuStackView.addArrangedSubview(itemImageView) 

     itemImageView = UIImageView(image: UIImage(named: "splash2")) 
     itemImageView.contentMode = .ScaleAspectFit 
     self.menuStackView.addArrangedSubview(itemImageView) 

     itemImageView = UIImageView(image: UIImage(named: "splash2")) 
     itemImageView.contentMode = .ScaleAspectFit 
     self.menuStackView.addArrangedSubview(itemImageView) 

     itemImageView = UIImageView(image: UIImage(named: "splash2")) 
     itemImageView.contentMode = .ScaleAspectFit 
     self.menuStackView.addArrangedSubview(itemImageView) 

     itemImageView = UIImageView(image: UIImage(named: "splash2")) 
     itemImageView.contentMode = .ScaleAspectFit 
     self.menuStackView.addArrangedSubview(itemImageView) 

     itemImageView = UIImageView(image: UIImage(named: "splash2")) 
     itemImageView.contentMode = .ScaleAspectFit 
     self.menuStackView.addArrangedSubview(itemImageView) 

     itemImageView = UIImageView(image: UIImage(named: "splash2")) 
     itemImageView.contentMode = .ScaleAspectFit 
     self.menuStackView.addArrangedSubview(itemImageView) 


     itemImageView = UIImageView(image: UIImage(named: "splash2")) 
     itemImageView.contentMode = .ScaleAspectFit 
     self.menuStackView.addArrangedSubview(itemImageView) 


    } 

    override func viewDidLayoutSubviews() { 
     super.viewDidLayoutSubviews() 
     menuScrollView.contentSize = CGSize(width: menuStackView.frame.width, height: menuStackView.frame.height) 

    } 
} 

ответ

1

Я думал бы о создании UIView, с которым вы настраиваете свой scrollview. Затем добавьте представление стека к этому представлению содержимого. Поскольку в противном случае, чтобы сделать просмотр стека, как вы этого хотите, мне пришлось добавлять ограничения со всех сторон его в представление прокрутки и добавлять ограничение высоты и ширины.

Я также ответил на подобный вопрос здесь, что может помочь:

https://stackoverflow.com/a/32999501/4626443

А вот ссылка на проект с рабочим прокруткой stackview, которые вы можете использовать, чтобы получить движение снова:

https://github.com/Rnorback/ScrollingStackView

Смежные вопросы