Ios 斯威夫特:如何使背景像在这张图片中?
我正在尝试创建一个像这样的背景 所以我创造了一个形象 这是我的密码Ios 斯威夫特:如何使背景像在这张图片中?,ios,swift,Ios,Swift,我正在尝试创建一个像这样的背景 所以我创造了一个形象 这是我的密码 let background_image: UIImageView = { let view = UIImageView() view.image = #imageLiteral(resourceName: "backg") view.contentMode = .scaleToFill return view }() background_image.topAnchor.constraint
let background_image: UIImageView = {
let view = UIImageView()
view.image = #imageLiteral(resourceName: "backg")
view.contentMode = .scaleToFill
return view
}()
background_image.topAnchor.constraint(equalTo: view.topAnchor).isActive = true
background_image.bottomAnchor.constraint(equalTo: view.bottomAnchor).isActive = true
background_image.leftAnchor.constraint(equalTo: view.leftAnchor).isActive = true
background_image.rightAnchor.constraint(equalTo: view.rightAnchor).isActive = true
但问题是因为屏幕的高度大于宽度,使得图像看起来在高度上扩大了,就像这样
如何使图像只填充屏幕的宽度而不是高度?您是否尝试过使用colorWithPatternImage方法(见下文) 在Swift 3中,它如下所示:
var patternImage = UIImage(named:"bluewhite.png")
self.view.backgroundColor = UIColor(patternImage: patternImage!)
self.collectionView.backgroundColor = UIColor(colorWithPatternImage:patternImage!)
但对于一个阵列或一组图像,您可以在主视图后面使用集合视图,并按如下方式配置每个集合视图项的背景:
var patternImage = UIImage(named:"bluewhite.png")
self.view.backgroundColor = UIColor(patternImage: patternImage!)
self.collectionView.backgroundColor = UIColor(colorWithPatternImage:patternImage!)
请看这篇文章,它讨论了一个类似的问题
view.contentMode = .scaleToFill
应该是
view.contentMode = .scaleAspectFill
将view.contentMode=.scaleToFill更改为view.contentMode=.aspectfill或使用纵横比至少与最窄的iPhone一样窄的图像,然后使用
.top
。另外,它现在是.scaleAspectFill
。您认为集合视图方法(上面讨论过)适合您吗?另外,你能把每个图像分解成单独的png文件,并将它们放在一个数组中,而不是将它们缝合在一起作为一个图像吗?我不使用图像组,所以我不这么认为