【发布时间】:2016-01-14 11:25:01
【问题描述】:
我正在像这样以编程方式制作一个 tableView
tableView = UITableView.init(frame: CGRectZero, style: .Plain)
tableView.delegate = self
tableView.dataSource = self
self.view = tableView
然后我将其 rowHeight 值设置为
tableView.estimatedRowHeight = 250
tableView.rowHeight = UITableViewAutomaticDimension
每个单元格都在单独的 .swift 文件中进行描述,每个单元格都有函数 'construct()' 构建自己的 content (标签、按钮等),这是他们的一段代码
let btnControl = UIButton()
btnControl.frame = CGRectMake(avatar.frame.origin.x, avatar.frame.origin.y + avatar.frame.size.height + 10, screenWidth - 20, 30)
self.addSubview(btnControl)
最后看起来像
那么问题出在哪里?
【问题讨论】:
-
也许你的约束设置错误,如果你想使用
UITableViewAutomaticDimension,你必须将你的单元格的最大视图固定在顶部和底部,然后单元格只根据那个进行缩放 -
也许吧。我根本没有做任何限制。正如您在图片上看到的,我有一张图片、3 个标签和按钮。您能帮我将图像与行顶部和按钮与行底部连接起来吗?我的意思是,以编程方式创建约束。我们正在使用 cell-swift-file 中的函数构造,正如我在 startPost 中描述的那样
-
事实上,我从来没有用代码创建约束,所以我不能真正帮助你,你为什么不能使用故事板呢?只需为顶部和底部容器创建 2 个约束,如果您尝试以编程方式创建所有内容,则更加困难,以编程方式更快的方法是计算图像或任何视图高度,然后根据
heightForRow设置单元格的高度
标签: ios swift tableview row-height uitableviewautomaticdimension