【问题标题】:Can't set size for UIImageView无法为 UIImageView 设置大小
【发布时间】:2019-08-07 19:11:09
【问题描述】:

我有一个UIImageView,我试图给它一个固定的大小,但它不起作用,UIImageView 的大小不会改变。 这是我的UIImageView

private let profileImg: UIImageView = {
    let img = UIImageView(image: UIImage(named: "profileplaceholder"))
    img.contentMode = .scaleAspectFill
    img.layer.borderWidth = 1.0
    img.layer.borderColor = UIColor.appPurple.cgColor
    img.layer.cornerRadius = img.frame.width / 2
    img.clipsToBounds = true
    img.frame.size.width = 80
    img.frame.size.height = 80
    return img
}()

我像这样将图像添加到UIStackView

private lazy var mStack: UIStackView = {
    let stack = UIStackView(arrangedSubviews: [self.profileImg, self.nickname, self.unfollowBtn])
    stack.translatesAutoresizingMaskIntoConstraints = false
    stack.distribution = .fill
    stack.axis = .horizontal
    stack.spacing = 1.0

    return stack
}()

【问题讨论】:

    标签: swift uitableview uiimageview uistackview


    【解决方案1】:

    StackView 将调整其元素的大小。你应该给它固定大小的约束:

    private let profileImg: UIImageView = {
    ...
        img.translatesAutoresizingMaskIntoConstraints = false
        img.heightAnchor.constraint(equalToConstant: 80).isActive = true
        img.widthAnchor.constraint(equalToConstant: 80).isActive = true
    ...
    }()
    

    【讨论】:

    • 非常感谢!工作得很好!
    猜你喜欢
    • 1970-01-01
    • 2011-02-11
    • 1970-01-01
    • 2017-12-10
    • 2018-08-20
    • 1970-01-01
    • 2012-06-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多