我在IO应用程序中有以下层次结构:
. TTTableViewController, with the following elements
.. @""
.. TTTableCaptionItem
.. @""
.. TTTableSubtitleItemCell
.. @""
.. TTTableTextItem
.. @""
.. (other cells)
.. TTTableViewItem
... TTTableViewController
这显示嵌入式TTTableViewController周围的“神秘边界”,我似乎无法摆脱它。
嵌入式TableViewItem的初始化完全是vanilla:
@implementation DetailCommentsItemCell
- (id) initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
if (self = [super initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:reuseIdentifier])
{
}
return self;
}
- (void)setObject:(id)object {
_item = object;
[self.contentView addSubview:[[object commentsViewController] tableView]];
}
(“commentsViewController”是嵌入式TTTableViewController)
有谁知道这些边界是什么以及如何摆脱它们?
根据要求,这是表格的设置代码:
- (id)initWithFilter:(ObjectId)parameter_filter detailViewController:(DetailViewController *)dvp;
{
DDLogInfo(@"CommentsViewController::initWithFilter parameter_filter %llu",
parameter_filter);
if (self = [super initWithStyle:UITableViewStyleGrouped])
{
self.tableView.clipsToBounds = YES;
self.variableHeightRows = YES;
}
return self;
}
更新:
@ rishi的优秀建议我添加了
self.tableView.backgroundColor = [UIColor clearColor];
self.tableView.backgroundView = nil;
这好多了,但我还有一件神器。见下文:
另一个更新:我添加了以下代码:
self.tableView.layer.borderColor = [[UIColor clearColor] CGColor];
self.tableView.layer.backgroundColor = [[UIColor clearColor] CGColor];
现在看起来像这样:
好像这层是罪魁祸首 - 但我无法摆脱边界 - 如果那就是它。
作为实验,我将包含单元格图层的边框设置为2和红色。这就是我得到的,它告诉我神秘的边界与桌子有关,而不是它周围的细胞:
这是ODD。我在Retina显示屏中看了它,“边框”实际上是桌子旁边某个物体的边框。
最终更新:
该工件原来是内部TableViewItem嵌入的表格单元格的边界。由于我进行了插入调整,单元格被偏移,但我无法正确调整y原点。
感谢大家的帮助!
答案 0 :(得分:0)
在initWithFilter
method-
self.tableView.backgroundColor = [UIColor clearColor];
self.tableView.backgroundView = nil;