3

在 iPad 上,Grouped 样式的 tableview 的单元格比在 iPhone 上从 tableview 的边缘插入得更深。

我需要检索从表格视图边缘到单元格开始位置的左右距离。我指的是类似于“边距”。我上下阅读了 UITableview API,找不到返回这个的属性。

我需要在计算中使用它来计算在我的单元格中放置内容的位置。

提前致谢!亚历克斯

4

2 回答 2

3

我还没有测试过这个,但我很确定你应该能够拿起两者的框架,然后从那里进行比较。

CGRect cellFrame = yourCell.frame;

CGRect tableFrame = yourUITableView.frame;

CGRect 值为(x coordinate, y coordinate, width, height).

您也可以使用以下方法打印出帧:

 NSLog(@"your cell frame is %@",NSStringFromCGRect(yourCell.frame);
 NSLog(@"your table frame is %@",NSStringFromCGRect(yourUITableView.frame);
于 2013-01-10T03:14:07.727 回答
1

我通过覆盖 iPad 的 layoutSubviews 调用并将分组视图边距设置为我想要的,而不是明显隐藏的值来解决这个问题。Stack 中的其他答案指出它的宽度可以在 10 到 45 像素之间变化。

In your CustomTableViewCell class
- (void)layoutSubviews
{
    CGRect f = self.bounds;
    f = CGRectInset(f, 10, 0);
    self.contentView.frame = f;
    self.backgroundView.frame = f;
}

您可以强制它保持 contentView 和 backgroundView 等于 TableCell 的宽度,即 TableView 的宽度,但在这种情况下,我仍然希望我的分组视图稍微插入一点。它还允许您更好地匹配自定义页眉/页脚视图,无需工作即可边缘到边缘。

于 2013-01-23T19:30:15.877 回答