图像视图将无法与集合视图中的约束正确对齐

问题描述 投票:0回答:1

我设置了收藏夹视图,并正在尝试向其中添加一些图像。图像已经出现在视图中,但是由于我的限制,它们不会同时居中x和y。这是代码:

class MenuCell: BaseCell {

let imageView: UIImageView = {
    let iv = UIImageView()
    iv.image =  UIImage(named: "icons8-person-24")
    return iv
}()

override func setupViews() {
    super.setupViews()

    addSubview(imageView)
    translatesAutoresizingMaskIntoConstraints = false
    addConstraintsWithFormat("H:|[v0(28)]|", views: imageView)
    addConstraintsWithFormat("V:|[v0(28)]|", views: imageView)
    addConstraint(NSLayoutConstraint(item: imageView, attribute: NSLayoutConstraint.Attribute.centerX, relatedBy: NSLayoutConstraint.Relation.equal, toItem: self, attribute: NSLayoutConstraint.Attribute.centerX, multiplier: 1, constant: 0))
    addConstraint(NSLayoutConstraint(item: imageView, attribute: NSLayoutConstraint.Attribute.centerY, relatedBy: NSLayoutConstraint.Relation.equal, toItem: self, attribute: NSLayoutConstraint.Attribute.centerY, multiplier: 1, constant: 0))
}
}
ios swift xcode uicollectionview uiimage
1个回答
0
投票

修改H:V:视觉布局约束,该约束约束到边框。

更改此:

addConstraintsWithFormat("H:|[v0(28)]|", views: imageView)
addConstraintsWithFormat("V:|[v0(28)]|", views: imageView)

为此:

addConstraintsWithFormat("H:[v0(28)]", views: imageView)
addConstraintsWithFormat("V:[v0(28)]", views: imageView)
© www.soinside.com 2019 - 2024. All rights reserved.