ios - 如何使 View 高度取决于 Swift 中的内容?

标签 ios swift uiview

我有一个 View 和其中的一些元素

let background_img_view: UIView = {
    let view = UIView()
    return view
}()
background_img_view.addSubview(background_image)
background_img_view.addSubview(border)
background_img_view.addSubview(about_txt)

about_txt 大小未知,可以是 30px 或 300px,现在我希望我的 background_img_view 的高度取决于 about_txt 的高度。

如何以编程方式实现它?

最佳答案

您是否尝试过对 about_txt View 使用 sizeThatFits(_:) 方法。使用此函数返回的大小并将 super View 的大小设置为该大小。 https://developer.apple.com/reference/uikit/uiview/1622625-sizethatfits

如果您在 View 显示在屏幕上之前添加了 subview ,则可以在 View Controller 的 viewWillAppear 方法中设置高度。您还可以在 viewWillLayoutSubviews 中更新大小。 如果您使用的是自动布局,请查看 setNeedsLayout vs. setNeedsUpdateConstraints and layoutIfNeeded vs updateConstraintsIfNeeded

关于ios - 如何使 View 高度取决于 Swift 中的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42771011/

相关文章:

iphone - 在不需要的 View 中触发替代景观

ios - 如何计算两个日期之间特定日期的计数?

ios - Swift PHP post请求从任务中设置全局变量

swift - 带有图像的 UITableViewRowAction,swift

ios - 如何从 UIViewcontroller 加载 UIView?

uiview - NSPoint、CGPoint、NSSize、CGSize和NSRect、CGRect的单位是什么?

ios - Swift 中的完成处理程序 Firebase 观察器

ios - 如何比较数组中的 UIImages?

ios - stripe iOS 集成中的creditCard.validateCardReturningError(&error)

ios - 如何使用 UIView 子类作为 UICollectionView 页脚