选择时更改单元格的高亮颜色后,围绕表格顶部和底部绘制的框不再在表格边框内剪辑。
我已经尝试过使用tableView和单元格的clipsToBounds,但没有运气。
任何解决方案?
谢谢!
问题的图像>
答案 0 :(得分:1)
我知道如何使你需要工作的效果,可能不是最好的方法,但你可以尝试。
首先检查细胞是否是最后一个细胞;如果是的话:
UIBezierPath *lastCellMask;
lastCellMask = [UIBezierPath bezierPathWithRoundedRect:cell.bounds byRoundingCorners:(UIRectCornerBottomLeft | UIRectCornerBottomRight) cornerRadii:CGSizeMake(3.0, 3.0)];
CAShapeLayer *cellMaskLayer = [[CAShapeLayer alloc] init];
cellMaskLayer.frame = cell.bounds;
cellMaskLayer.path = lastCellMask.CGPath;
cell.layer.mask = cellMaskLayer;
并对第一个单元格执行相反的操作
这对我有用,检查一下这是否可以帮助你
答案 1 :(得分:0)
查看图片,试试
[cell setSelectionStyle:UITableViewCellSelectionStyleNone];
答案 2 :(得分:0)
问题是您在表格视图中使用grouped
样式。分组表视图没有您在UI中看到的边距,并且使用clipToBounds
将无济于事,因为单元格边界正是您在选择单元格时看到的边界。您可以做的是使用单元格的cornerRadius
图层属性(仅限该部分中的第一个和最后一个单元格),以便对角进行圆整并创建所需的结果。