我有一个数组,UIImageViews
每个数组都有一个不同的图像,还有一个将它们放在a中的函数,UIScrollView
这样它们可以像幻灯片一样自动滚动。我的滚动视图的高度为150像素,图像为400x150 PDF。
出于某些奇怪的原因,我的图像在iPhone 5模拟器上垂直失真,而在iPhone 6和6 Plus上却完全正常。任何人都无法理解为什么会这样吗?
这是我的代码:
var pageViews: [UIImageView] = []
@IBOutlet weak var carousel: UIScrollView!
func showPage() {
//Sets up the image views with their images inside the scroll view
for (index, page) in enumerate(pageViews) {
var frame = carousel.frame
page.frame = CGRectMake(frame.size.width * CGFloat(index), 0, carousel.frame.width, page.image!.size.height)
page.frame.origin.x = frame.size.width * CGFloat(index)
page.contentMode = .ScaleToFill
carousel.addSubview(page)
}
}
上面的函数在viewDidAppear()中被调用。我试过在viewDidLoad()和viewDidLayoutSubviews()中调用它,但是没有区别。我还尝试将其更改UIViewContentMode
为其他选项,例如.ScaleAspectFit
固定了高度失真的图像,但图像不再充满其图像视图,这使所有内容看起来都很奇怪。我尝试更改图像大小,但是没有效果。最后,我尝试过page.sizeToFit()
将所有事情弄糟。我现在有点迷路了。
设置图像视图clipToBounds
,以true
和UIViewContentMode
为.Center
固定的问题!这可能是一个临时解决方案,但目前效果很好。谢谢您的帮助
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句