如何获得实际的StackView大小?

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

我在.xib文件中添加了UIStackView并设置了约束(我只设置了4个-顶部,底部,前导,尾随,我没有设置高度约束。您可以在屏幕截图中看到它们),接下来将其出口放到.swift文件,接下来以编程方式添加了堆栈项。但是,当我尝试获取堆栈大小时,收到了错误的值。

enter image description here

for item in items {
    //...
    //create itemView
    //...
    myStack.addArrangedSubview(itemView)
    myStack.translatesAutoresizingMaskIntoConstraints = false
}

let maxYRegardingSuperView = myStack.frame.maxY

如果我尝试获得边界尺寸myStack.bounds.height,则显然也会得到错误的尺寸。我在做什么错?

ios swift xcode uistackview
1个回答
0
投票

此行

let maxYRegardingSuperView = myStack.frame.maxY

很早,您需要将其放入layoutSubviews / viewDidLayoutSubviews

© www.soinside.com 2019 - 2024. All rights reserved.