在iPad上,Grouped样式tableview的单元格从桌面边缘比在iPhone上更深。
我需要检索从tableview边缘到单元格开始处的左右距离。我指的是类似“边缘”。我上下阅读了UITableview API,找不到返回此属性的属性。
我需要在计算中使用它来计算在我的单元格中定位内容的位置。
提前致谢! 亚历
答案 0 :(得分: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);
答案 1 :(得分: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等于TableView宽度的那个,即TableView宽度,但在这种情况下,我仍然希望我的分组视图插入一点点。它还允许您更好地匹配自定义页眉/页脚视图,该视图将无法正常工作。