我想省略两个tableview单元格之间的分隔线。但是没有没有分隔符,我得到一个高度为1像素的分隔线,它只是留空或更好地表示完全透明。
如何告诉uitableview如何将下一个细胞直接连接到上面的细胞(没有任何间隙)?
答案 0 :(得分: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,但上述步骤对我的列表视图起作用,现在不再有分隔符了。
答案 1 :(得分:0)
我发现我的标题设置为1,删除了我修复的问题(奇数单元格分隔符中有1个像素)我改为0,生活似乎更好
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
return 0;
}
答案 2 :(得分:0)
我无法摆脱分隔符,所以我最终决定在UIScrollView上编写自己的tableview。那个“分隔符”还在那里!事实证明,如果设置背景颜色,UILabel中有一个错误,有时会导致它沿顶部边缘绘制一条细线。修复方法是在图层上设置背景:label.layer.backgroundColor = color.CGColor;