下面的代码尝试在 ImageView 上加载 gif。当代码使用 Storyboard 上的约束时,此代码有效,但是当我编写 nslayout 约束时,gif 不会出现。没有运行时或编译错误,只是没有出现 gif。
let FIRE = UIImageView()
override func viewDidLoad() {
super.viewDidLoad()
FIRE.loadGif(name: "FIRE")
view.addSubview(FIRE)
FIRE.centerXAnchor.constraint(equalTo: view.centerXAnchor).isActive = true
FIRE.topAnchor.constraint(equalTo: view.topAnchor, constant: 20).isActive = true
FIRE.widthAnchor.constraint(equalToConstant: 400).isActive = true
FIRE.heightAnchor.constraint(equalToConstant: 80).isActive = true
}
最佳答案
您需要禁用 View 的自动调整大小掩码才能手动设置约束:
let imageView = UIImageView()
override func viewDidLoad() {
super.viewDidLoad()
// 1) turn off autoresizing mask
imageView.translatesAutoresizingMaskIntoConstraints = false
// 2) set contraints
self.setupSubviews()
// 3) update the view
imageView.loadGif(name: "FIRE")
}
func setupSubviews() {
self.view.addSubview(imageView)
imageView.centerXAnchor.constraint(equalTo: view.centerXAnchor).isActive = true
imageView.topAnchor.constraint(equalTo: view.topAnchor, constant: 20).isActive = true
imageView.widthAnchor.constraint(equalToConstant: 400).isActive = true
imageView.heightAnchor.constraint(equalToConstant: 80).isActive = true
}
关于ios - Gif 未出现在手动输入的约束上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53890865/