gpt4 book ai didi

ios - 当父 UIview 约束减少时,如何使 swift UIview 子元素自动收缩?

转载 作者:行者123 更新时间:2023-11-30 11:03:57 24 4
gpt4 key购买 nike

class ViewController{                

@IBOutlet weak var UiCalendarView: UIView!
@IBOutlet weak var UiCalendarViewConstraint: NSLayoutConstraint!
let calendar = FSCalendar(frame: CGRect(x: 0, y: 0, width: 373, height:300))


override func viewDidLoad() {
super.viewDidLoad()
UiCalendarView.addSubview(self.calendar)
UiCalendarViewConstraint.constant = 23
}
}

但是 UiCalendarViewConstraint.constant 更改并没有多大作用,因为子组件 calendar 有自己的高度并且保持不变。

最佳答案

您需要向子级添加约束,并在父级大小更改时捕获引用,您根据高度更改子级的约束。但是,如果您将子级与父级从顶部和底部固定在一起,则当父级尺寸更改时,子级会自动更改

let parentView = UIView()
let childView = UIView()
parentView.addSubView(childView)
childView.translatesAutoresizingMaskIntoConstraints = false
parentView.translatesAutoresizingMaskIntoConstraints = false

childView.topAnchor.constraint(equalTo: parentView.topAnchor).isActive = true
childView.bottomAnchor.constraint(equalTo: parentView.bottomAnchor).isActive = true
childView.leadingAnchor.constraint(equalTo: parentView.leadingAnchor).isActive = true
childView.trailingAnchor.constraint(equalTo: parentView.trailingAnchor).isActive = true

这段代码将让 subview 填充父 View ,当您自动更改父 View 的高度或宽度时,它将调整其大小。

关于ios - 当父 UIview 约束减少时,如何使 swift UIview 子元素自动收缩?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52968328/

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