圖像我有以下滾動視圖代碼斯威夫特 - 如何申請調整內滾動視圖
class ViewController: UIViewController, UIScrollViewDelegate {
@IBOutlet weak var scrollView: UIScrollView!
@IBOutlet weak var pageControl: UIPageControl!
var imageArray = [UIImage(named: "mainScrollView1"), UIImage(named: "mainScrollView2"), UIImage(named: "mainScrollView3"),]
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
configurePageControl()
scrollView.pagingEnabled = true
scrollView.showsHorizontalScrollIndicator = false
scrollView.delegate = self
for var i = 0; i < imageArray.count; i++ {
if i == 0 {
var imageView = UIImageView(frame: CGRectMake(0, 0, scrollView.frame.size.width, 160))
imageView.image = imageArray[i]
scrollView.addSubview(imageView)
} else {
var float: CGFloat = CGFloat(i)
var imageView = UIImageView(frame: CGRectMake(scrollView.frame.size.width * float, 0, scrollView.frame.size.width, 160))
imageView.image = imageArray[i]
scrollView.addSubview(imageView)
}
}
scrollView.contentSize = CGSizeMake(scrollView.frame.size.width*3, scrollView.frame.size.height)
}
func configurePageControl() {
self.pageControl.numberOfPages = 3
self.pageControl.currentPage = 0
self.pageControl.tintColor = UIColor.redColor()
self.pageControl.pageIndicatorTintColor = UIColor.blackColor()
self.pageControl.currentPageIndicatorTintColor = UIColor.whiteColor()
self.view.addSubview(pageControl)
}
func scrollViewDidEndDecelerating(scrollView: UIScrollView) {
let pageNumber = round(scrollView.contentOffset.x/scrollView.frame.size.width)
pageControl.currentPage = Int(pageNumber)
}
}
的問題是圖像內滾動靜態的,它們不改變它們的大小不同的屏幕正因爲如此,它看起來像這樣
正如你看到的第一個圖像大小不擴展以填充整個屏幕寬度和BEC可以看到這部分第二圖像的使用
這怎麼解決?
設置contentSize在'viewDidLayoutSubviews' –
我嘗試在''viewDidLayoutSubviews' = scrollView.contentSize CGSizeMake(scrollView.frame.size.width * 3,滾動視圖再次調用此.frame.size.height)'但它沒有幫助,圖像保持不變。看來它必須以不同的方式完成? –
不只是滾動視圖,但你需要在'viewDidLayoutSubviews'中設置一個圖像/頁面的寬度。 –