ios - 扩展 UITableView 以显示 Stack View 中的所有单元格?

标签 ios swift uitableview uistackview

我无法让我的 UITableView 在我的 Stack View 中显示全高。

我的 View 树如下所示:

- View
  - Scroll View
    - Stack View
      - Table View
      - Image View
      - Map View

表格 View 动态填充数据,效果很好。问题是一次只能看到一行,我必须滚动列表。我希望看到的是 TableView 占用尽可能多的垂直空间来显示所有单元格。

我确实尝试过按如下方式调整表格高度,但最终表格不再滚动,尽管即使它确实有效,我还是希望有一些更动态的东西:

override func viewDidAppear(animated: Bool) {
    super.viewDidAppear(animated)        
    self.detailsTableView.frame.size.height = 200
}

我怀疑这可能是需要调整的“堆栈 View ”的一个方面,但我现在不确定。谁能提出合适的方法?

最佳答案

我一直遇到同样的问题,并意识到您需要一个自动调整大小的 TableView 。我偶然发现了这个 answer并创建了一个像@MuHAOS 建议的子类。我没有遇到任何问题。

final class IntrinsicTableView: UITableView {

    override var contentSize: CGSize {
        didSet {
            invalidateIntrinsicContentSize()
        }
    }


    override var intrinsicContentSize: CGSize {
        layoutIfNeeded()
        return CGSize(width: UIView.noIntrinsicMetric, height: contentSize.height)
    }

}

关于ios - 扩展 UITableView 以显示 Stack View 中的所有单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35876003/

相关文章:

ios - Swift - 使用来自 API 的数据填充 UITableView

json - 如何在 swift 中创建特定的数据结构。 Swifty Json 没有用 :(

objective-c - 我的 UITableView 不滚动

ios - 如何只在 UITableView 的底部添加阴影?

iphone - 将项目嵌入项目中?

ios - 如何以编程方式关闭铃声?

ios - 异步任务后 SwiftUI 中的正确导航方式

ios - 在 UITableView 顶部显示消息

ios - 是否有一个开源库可以模仿 iOS 上的文件夹动画

iOS 不调用 Facebook 身份验证回调