ios - UIStackView 高度,内容在中间而不是在顶部

标签 ios swift uistackview

我有一个 UIStackview,当它充满一堆东西时,它很好,但是,当它充满 1 或 2(例如)时,它会分散它们而不是将它们放在顶部。我做错了什么?

enter image description here

事情是这样的。我希望它们位于顶部,而 No 就在其下方。 enter image description here

for i in 0..<self.itemSpecificsArray.count {
                    let itemSpecificName = UILabel()
                    let itemSpecificValue = UILabel()

                    itemSpecificName.textColor = UIColor(red: 236.0 / 255.0, green: 91.0 / 255.0, blue: 110.0 / 255.0, alpha: 1.0)
                    itemSpecificName.textAlignment = .left
                    itemSpecificName.font = UIFont.boldSystemFont(ofSize: 18.0)

                    itemSpecificValue.textColor = UIColor.black
                    itemSpecificValue.textAlignment = .left
                    itemSpecificValue.font = UIFont.systemFont(ofSize: 15.0)

                    print(self.itemSpecificsArray[i].itemSpecificName)
                    print("** \(self.itemSpecificsArray[i].itemSpecificValue)")
                    itemSpecificName.text = self.itemSpecificsArray[i].itemSpecificName
                    itemSpecificValue.text = self.itemSpecificsArray[i].itemSpecificValue

                    self.mainSectionItemSpecifics.addArrangedSubview(itemSpecificName)
                    self.mainSectionItemSpecifics.addArrangedSubview(itemSpecificValue)
                     if (i == self.itemSpecificsArray.count) {
                        let view = UIView()
                        self.mainSectionItemSpecifics.addArrangedSubview(view)
                    }
                }

对于每个索引,它都有一个 itemSpecificName 和 itemSpecificValue。如果我需要将这两个标签放在 View 中,那么我可以这样做...这可能会解决问题,不是吗?

最佳答案

UIStackView 想要拉伸(stretch)其排列的 subview 以填充它自己的(堆栈 View 的)边界。如果您不想拉伸(stretch)标签,则需要更改 UIStackView 上的约束,以便它可以收缩以适合其 subview ,或者向堆栈 View 添加一个排列好的 subview ,以吸收提取空间。例如,您可以在两个标签之后添加一个没有约束的普通 UIView。自动布局会将堆栈 View 边界的额外空间提供给 UIView

关于ios - UIStackView 高度,内容在中间而不是在顶部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56819210/

相关文章:

ios - iBeacon:运行应用程序时未调用 didRangeBeacons

ios - 从 url 方案中获取文本字符串在 appdelegate 中有效,但在 viewcontroller 中无效

ios - 为什么我的时间 UILabels 从暂停状态恢复播放时会跳过 2 秒?

ios - UIStackView 可以支持 iOS 8 或 7 吗?

ios - Stack View 大小变化无法可视化

ios - 如何停止 AVAudioPlayer

ios - 同一应用的专业版和应用内版本

ios - 居中对齐 UIAlertController 中的图像操作

ios - Spotify 用户专辑不匹配

ios - 排列具有多个 subview 的 View