【问题标题】:How to dynamically set row height with autolayout and stack views inside如何使用内部自动布局和堆栈视图动态设置行高
【发布时间】:2016-11-19 14:48:39
【问题描述】:

找不到有效的解决方案。在所有这些自动布局和约束人员中有点迷失。 这项任务很简单——需要选择性地在表格单元格中隐藏一些信息。

当某些堆栈视图块被隐藏时如何动态缩小行高?

我已经设置好了:

TableView.RowHeight = UITableView.AutomaticDimension;
TableView.EstimatedRowHeight = 128;

以及最后一个堆栈视图底部和超级视图(单元格内容视图)之间的相关约束。但是当这个堆栈将被隐藏时,显然必须有一些其他的约束。 我在主要信息块(始终可见)和优先级较低的超级视图底部制作了另一个。 但这不起作用...无法弄清楚约束、优先级和堆栈视图布局之间的所有关系。

想提一下,堆栈视图也具有动态大小,因为它的内部上下文 - 基本上是多行标签。

【问题讨论】:

    标签: ios uitableview autolayout


    【解决方案1】:

    如果您设置堆栈视图的hidden 属性,它不再可见,但高度仍然不是0,并且对整个单元格高度有影响。隐藏某些内容并重新计算内容视图高度的更好方法 - 将高度约束添加到您的堆栈视图并将其设置为 0,当您隐藏它时。但这很复杂,因为堆栈视图的高度取决于内容。 我建议你把你的视图放到一个大的垂直堆栈视图中,然后将这个垂直堆栈视图的顶部和底部约束连接到内容视图。堆栈视图在隐藏子项时会自动调整高度,因此这可能会对您有所帮助。

    【讨论】:

    • 啊,太简单了!这里是:'堆栈视图在隐藏子项时自动调整高度'tnx
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-13
    • 2019-04-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多