gpt4 book ai didi

ios - 为什么模态呈现 View Controller 会破坏我的 TableView 中的自动布局?

转载 作者:可可西里 更新时间:2023-11-01 03:58:02 26 4
gpt4 key购买 nike

示例项目: http://cl.ly/1o2K2m2r262q

我有一个带有自定义单元格的 UITableView,这些单元格的高度是根据自动布局自动计算的。自定义单元格中包含三个标签,每个标签与内容 View 之间保持垂直间距,并从左侧推开。

当我输入数据并加载时,效果很好。

但是,当我从托管 TableView 的 View Controller 中以模态方式呈现 View Controller 时,我注意到当我返回到原始 View Controller 时它完全破坏了自动布局。

什么会导致这种情况?我将数据填充到一个简单的数组中,该数组充当 TableView 数据源的模型,然后它就是自动布局。这是一个如此简单的项目,我不知道它会在哪里搞砸。

补充:我很欣赏 rdelmar 的回答,但我简直不敢相信现在还没有一款单个应用可以利用 iOS 的动态单元格功能8 没有制作非常跳跃的表格 View 。这将是非常引人注目的。一定有人想出了使这项工作可行的方法,否则他们永远不会发货。

最佳答案

你有几个问题。在 Storyboard中,场景列表中有一个红色警告箭头。你不应该忽视这一点。单击它并进行它建议的更改(首先执行压缩阻力值,我认为拥抱内容会自行消失)。

在 MasterViewController 的 viewDidLoad 中,添加自调整单元格所需的这两行,

self.tableView.estimatedRowHeight = 120
self.tableView.rowHeight = UITableViewAutomaticDimension // you may not need this one, I think it might be the default now

最后,我发现当我在 Storyboard 中创建单元格时(而不是在代码中),我需要将以下方法添加到单元格类中,以便立即进行布局(否则不会正确布局,直到您滚动或旋转),

override func didMoveToSuperview() {
self.layoutIfNeeded()
}

关于ios - 为什么模态呈现 View Controller 会破坏我的 TableView 中的自动布局?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27031145/

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