使用可选图像(Swift)调整UITableViewCell大小

时间:2016-08-23 14:08:21

标签: ios swift uitableview interface-builder

我正试图弄清楚这一点:

我有UITableViewCell个固定大小的UIImage(250 x 250)固定在单元格的顶部ViewUILabel个变量下方的文字大小,其顶部固定在UIImage的底部,其底部固定在单元格View的底部。

我有一个用例,其中图片并不总是保证,因此图片视图故意折叠到0高度,因此它不会破坏autolayout on UILabel的顶部固定。

我认为这会让UITableViewCell缩小到标签的大小,而是保持默认高度,自动布局拉伸标签的高度(以保持固定到顶部)文本居中于中间。

我使用了所有常见的嫌疑人,UITAbleViewAutomaticDimensionestimatedRowHeight等等(你可能会先建议的!)并且无济于事。

我做错了什么?

我确实看到有关将IB中的约束的优先级更改为250而不是1000的内容,以便它们可以中断。还有一些参考文件通过调用UITableViewCell上的requiredHeight()来打破布局来手动调整UILabel(跛脚和讨厌),所以我在这里做错了什么?谢谢!

1 个答案:

答案 0 :(得分:2)

  

我有一个用例,其中图片并不总能保证

对于这种情况,您可以创建2种UITableViewCell:第一种UIImageView,第二种没有cellForRowAtIndexPath。然后,在$(function() { var step = 0.2; $('.larger').click(function() { $('body *').each(function() { var actualSize = parseInt($(this).css('font-size'), 10); var newSize = actualSize / 10 + step; $(this).css('font-size', newSize+'rem'); }); }); $('.smaller').click(function() { $('body *').each(function() { var actualSize = parseInt($(this).css('font-size'), 10); var newSize = actualSize / 10 - step; $(this).css('font-size', newSize+'rem'); }); }); });初始化您想要的单元格。