我有一个UIImageViews
数组,每个数组都有一个不同的图像和一个将它们放在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()
,这搞砸了一切。我现在有点迷路了......帮忙?
答案 0 :(得分:0)
将图片视图clipToBounds
设置为true
,将UIViewContentMode
设置为.Center
解决了问题!这可能是一个临时解决方案,但现在效果很好。谢谢你的帮助