Я играю с видами прокрутки и столкнулся с проблемой, с которой я застрял. У меня есть контроллер представления создать в раскадровке. Контроллер представления содержит представление прокрутки, которое заполняет все суперпредставление.
Затем я добавил изображения программно в режим прокрутки. Изображения отображаются в режиме прокрутки, а подкачка работает нормально. Единственная проблема заключается в том, что представление прокрутки установлено для заполнения суперпредставления, но представление изображений, в котором хранятся изображения, кажется, что оно останавливается над тем местом, где будет находиться панель навигации. Как сделать так, чтобы представление изображений заполняло весь вид в представлении с прокруткой?
@IBOutlet weak var scrollView: UIScrollView!
@IBOutlet weak var pagingView: UIPageControl!
var images = [UIImage]()
var frame = CGRect(x: 0, y: 0,width: 0,height: 0)
override func viewDidLoad() {
super.viewDidLoad()
scrollView.delegate = self
scrollView.isPagingEnabled = true
images = [UIImage(named: "Slide1")!, UIImage(named: "Slide2")!, UIImage(named: "Slide3")!, UIImage(named: "Slide4")!]
pagingView.numberOfPages = images.count
// This is where I think I'm having the height problem.
for i in 0..<images.count {
let imageView = UIImageView()
let x = self.view.frame.size.width * CGFloat(i)
imageView.frame = CGRect(x: x, y: 0, width: self.view.frame.width, height: self.view.frame.height)
imageView.contentMode = .scaleAspectFill
imageView.image = images[i]
scrollView.contentSize.width = scrollView.frame.size.width * CGFloat(i + 1)
scrollView.addSubview(imageView)
}
}
func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
let pageNumber = scrollView.contentOffset.x / scrollView.frame.size.width
pagingView.currentPage = Int(pageNumber)
}
После установки скрытой навигационной панели вот такой вывод:
Цвет фона представления прокрутки - красный