我有一个 UITableView
从远程 XML 动态加载数据。它有 1 个高度为 70 的原型(prototype)单元格。
我尝试将 UITableView
的高度设置为:
Cell Height x Number of Rows
使用 [tbl setFrame:CGRectMake(0, 0, 320, 70 * contents.count)];
但表格大小保持不变。
因为我使用的是自动布局,有人建议我应该使用:
[tbl setTranslatesAutoresizingMaskIntoConstraints:NO];
已添加,但大小保持不变。
如何更改 UITableView
的大小以准确适应数据的大小?
最佳答案
假设您的 tableView 锚定在顶部,并且它的高度不受约束(使用占位符 intrinsicSize 在界面构建器上允许这样做),您可以将 UITableView 扩展成这样,并且您不需要任何代码:
@implementation ExpandedTableView
- (void)reloadData
{
[super reloadData];
[self invalidateIntrinsicContentSize];
}
- (CGSize)intrinsicContentSize
{
return self.contentSize;
}
@end
关于ios - 使用编程自动布局调整 UITableView 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24034834/