UITableViewAutomaticDimension不适用于UIImageView

问题描述 投票:1回答:4

我正在使用UITableViewAutomaticDimension来调整具有动态标签和图像的单元格高度。

tableView.rowHeight = UITableViewAutomaticDimension;
tableView.estimatedRowHeight = 80.0;

我希望在标签内容增加时调整单元格的大小,并且它工作正常。

我希望保持单元格的最小高度(比如80),即使标签根本没有内容,图像也要始终适合。我已经应用了autolayout并为imageview设置了恒定的高度,宽度,顶部空间和前导空间约束。但是当标签内容较少时,单元格高度低于约束高度。

在使用“UITableViewAutomaticDimension”功能时,我该怎么做才能使单元格保持最小高度以适合imageView。

提前致谢。

ios objective-c uitableview ios-autolayout
4个回答
2
投票

尝试创建一个辅助隐藏视图,将其顶部,底部约束设置为单元格的contentView,任何宽度和x位置,然后将其高度设置为大于或等于80。


0
投票

添加比率约束

[self.tableview setNeedsLayout];

[self.tableview layoutIfNeeded];

[self.tableview reloadData];

0
投票

添加比率约束并将代码放在要重新加载tableview的位置

- (void)refreshWithData:(NSArray *)synopsissarr atIndex:(NSInteger)index {

    synopsisArray=synopsissarr;

    [self.tableview setNeedsLayout];

    [self.tableview layoutIfNeeded];

    [self.tableview reloadData];

-1
投票

highsun16是对的。我会更喜欢更多的细节。这是一个演示项目,它提供了复制highsun16答案所需的所有细节:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.