我正在尝试将UIImageView作为子视图添加到现有的UIImageView,以获取Backgroundimage,可以将其设置为AspectFit。
所以我尝试这样做:
import UIKit
class ViewController: UIViewController {
@IBOutlet var photo: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
photo.image = UIImage(named:"test.png")
photo.contentMode = .scaleAspectFill
let width = self.photo.bounds.size.width
let height = self.photo.bounds.size.height
let imageViewBackground = UIImageView(frame: CGRect(x:0,y:0,width:width,height:height))
imageViewBackground.image = UIImage(named:"DG.png")
imageViewBackground.contentMode = .scaleAspectFit
photo.addSubview(imageViewBackground)
photo.sendSubviewToBack(imageViewBackground)
}
}
但是,“ DG.png”始终显示在“ test.png”的前面。
我还尝试将子视图插入索引0,并且还尝试在UIImageView的扩展名中添加该代码,但是没有任何效果。
有人可以解释一下,这为什么不起作用?
谢谢!
最佳答案
如果将一个视图添加为另一个视图的子视图,它将始终位于父视图的前面。
为什么不使用第一个imageview作为背景并将照片添加为子视图?
为什么要在代码中添加imageview?您可以仅在情节提要中添加imageview。
关于ios - 将UIImageView subview 作为背景添加到UIImageView不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57576755/