我试过了,LogCGRect(cell.textLabel.frame);
但这只是给了我(0, 0) 0 x 0
如何找出单元格中 textLabel 的 CGRect?为什么我想知道是因为我是子类UITableViewCell
化并且我想保留原始 textLabel 的尺寸并减去 30 像素的宽度。
我试过了,LogCGRect(cell.textLabel.frame);
但这只是给了我(0, 0) 0 x 0
如何找出单元格中 textLabel 的 CGRect?为什么我想知道是因为我是子类UITableViewCell
化并且我想保留原始 textLabel 的尺寸并减去 30 像素的宽度。
我找到了答案。在-cellForRowAtIndexPath:
单元格的子视图尚未布局。使用委托方法:
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
LogCGRect(cell.textLabel.frame);
}
UITableViewCell
的 textLabelCGRectZero
默认有框架。您必须设置textLabel.text
一些值才能更改框架。