使用“Grouped”样式时,自定义UITableViewCell不会调整大小

时间:2012-12-03 21:00:56

标签: ios ipad

我有一个视图控制器,它是SplitViewController的“Detail”端。它有一个控件,一个UITableView。我正在加载自定义UITableViewCell。当“Style”设置为“Plain”(某种程度)时,它可以正常工作。但是当我将样式更改为“Grouped”时,自定义单元格会扩展到每个分组部分的边框之外。

如果我关闭自定义单元格笔尖上的“Autolayout”,它可以正常工作。但是,我希望单元格使用自动布局,以便它可以按照我想要的方式在不同的设备上运行。

就像我说的那样,它“有点”以“平原”的风格运作。问题仍然存在。如果我在设备上切换方向,则详细视图控制器现在整个视图上都有滚动条。所以,我们确实有相同的间距问题,它不是那么明显。

我对这个完全感到困惑。我不能成为第一个看到这个的人。

1 个答案:

答案 0 :(得分:0)

这与“水平间距”约束有关,该约束自动放在UITableViewCell中的任何对象上。降低此约束的优先级,然后以编程方式添加自己的约束将解决问题。

请参阅此stackoverflow问题 - Auto layout with custom UITableViewCell

我用来将Label保持在Grouped UITableViewCell范围内的示例。这需要在创建单元格时完成:

NSDictionary *dict = NSDictionaryOfVariableBindings(_label);
[self.contentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-10-[_label]" options:0 metrics:nil views:dict]];