我正在尝试确定UITableCellView的大小。原因是我使用一个类用于不同的方向和设备。
单元格包含一个应该填充整个单元格的子视图。我知道我在UITableViewCell
的{{1}}方法中执行此操作:
init
显然,必须有更好的方法来做到这一点,没有神奇的数字。如何/在哪里应该在UITableViewCell中设置子视图的框架,以便它填满整个UITableViewCell?
答案 0 :(得分:2)
使用单元格将进入的表视图的尺寸。将autoresizingMask设置为灵活宽度以处理旋转和附件视图。此代码假定您已设置表的rowHeight,但您可以使用屏幕高度的一小部分而不是测试设备类型。
-(CGRect) cellFrameForTableView:(UITableView *)inTable {
CGRect result = [inTable frame];
result.origin = CGPointZero;
result.size.height = [inTable rowHeight];
return result;
}
将自定义视图添加到单元格内容,而不是单元格,如果您希望自动调整大小以调整视图,以便为附件视图等单元格附加功能留出空间。在这种情况下,编辑控件之类的内容会调整您的自定义视图以及内容视图。
过去我在单元格中有灵活的高度视图时遇到问题,所以我会选择灵活的底部边距。