7

我想省略两个表格视图单元格之间的分隔线。但是,我得到的不是没有分隔符,而是一条高度为 1 像素的分隔线,它只是留空,或者说完全透明。

如何告诉 uitableview 如何将下一个单元格直接附加到上面的单元格(没有任何间隙)?

4

3 回答 3

4

好的,找到我的答案并分享它,以防它帮助他人。

我按程序设置了所有单元格,因此我通过以下方式关闭了分隔符

m_tableView setSeparatorColor:[UIColor colorWithRed:0.0f green:0.0f blue:0.0f alpha:0.0f]]

接下来我通过设置分隔符样式

m_tableView.separatorStyle = UITableViewCellSeparatorStyleNone;

虽然我不得不承认这似乎没有做任何事情,这可能是一个红人。

对我来说,我发现调用了 cellForRowAtIndexPath 来配置单元格,我必须将背景图像的高度扩展 1 个像素以消除线条(我也为此使用了可拉伸的图像,这也可能使自己变得奇怪+1 要求)。我不是任意 +1 的粉丝,但这似乎可以解决问题......

frameBackground.size.height += 1;

因此,虽然不支持 +1,但上述步骤对我的列表视图有效,现在不再有分隔符。

于 2012-08-21T17:24:03.990 回答
0

我无法摆脱分隔符,所以我最终决定在 UIScrollView 之上编写自己的 tableview。而“分隔符”还在!事实证明,UILabel 中存在一个错误,如果您设置背景颜色,有时会导致它沿顶部边缘绘制一条细线。修复方法是在图层上设置背景: label.layer.backgroundColor = color.CGColor;

于 2015-01-31T23:57:32.303 回答
0

我发现我的标题设置为 1,删除了这个解决了我的问题(我在奇数单元格分隔符中有额外的 1 个像素)我更改为 0,生活似乎更好

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
    return 0;
}
于 2014-11-21T10:38:32.110 回答