【问题标题】:Gif not appearing on manually entered constraintsGif 没有出现在手动输入的约束上
【发布时间】:2019-05-22 06:50:19
【问题描述】:
我下面的代码试图在图像视图上加载 gif。此代码在代码使用情节提要上的约束时有效,但是当我编写 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
}
【问题讨论】:
标签:
ios
swift
gif
nslayoutconstraint
addsubview
【解决方案1】:
您需要禁用视图的自动调整大小掩码才能手动设置约束:
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
}