gpt4 book ai didi

iOS - 在 scaleaspectfit UIImageView 的图像上布局 UIImageView 的 subview

转载 作者:行者123 更新时间:2023-11-28 15:18:58 26 4
gpt4 key购买 nike

我有 UITableView,其中每个单元格上有一个具有相同 View (仅不同内容)的 UIStackView。(tableView 的单元格如下所示)

UITableView cell

View 由上面的 UIImageView 和 UILabel 组成。 UIImageView 的内容设置为 .scaleAspectFit,因为保持比率。我在向 imageView 添加新图像层( subview )时遇到问题,它必须与当前图像完美重叠,但我无法使用自动布局正确地适应图像,因为我只知道 UIImageView 的 anchor ,而不是图像的 anchor (它不知道t 存在)。

PS:我试过用imageview.image.size.width设置宽高,也没用。

当前使用自动布局添加 subview 的代码:

func addStripe(){
let stripeLayer = UIImageView(image: #imageLiteral(resourceName: "book_new"))
imageView.addSubview(stripeLayer)

stripeLayer.contentMode = .scaleToFill
stripeLayer.translatesAutoresizingMaskIntoConstraints = false

stripeLayer.topAnchor.constraint(equalTo: imageView.topAnchor).isActive = true
stripeLayer.leadingAnchor.constraint(equalTo: imageView.centerXAnchor).isActive = true
stripeLayer.trailingAnchor.constraint(equalTo: imageView.trailingAnchor).isActive = true

Aaaand 有一个 addStripe 函数的结果(错误的那个)

And there is a result

感谢大家的宝贵时间!

最佳答案

我认为您应该将 stripeLayer 的 frame 设置为等于 imageView。您可以使用 UIImageView 的 init 方法执行此操作,如下所示:

let stripeLayer = UIImageView(frame: imageView.frame)
stripeLayer.image = #imageLiteral(resourceName: "book_new")
imageView.addSubview(stripeLayer.image)

希望对你有帮助

关于iOS - 在 scaleaspectfit UIImageView 的图像上布局 UIImageView 的 subview ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46351115/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com