我刚刚意识到,如果我使用此代码仅舍入UITableView
的前2个边缘:
UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:thetableView.bounds
byRoundingCorners:UIRectCornerTopLeft | UIRectCornerTopRight
cornerRadii:CGSizeMake(10.0, 10.0)];
// Create the shape layer and set its path
CAShapeLayer *maskLayer = [CAShapeLayer layer];
maskLayer.frame = thetableView.bounds;
maskLayer.path = maskPath.CGPath;
thetableView.layer.mask = maskLayer;
如果我向下滚动到我在Interface Builder中创建的UITableView
框架下方的任何内容,我的tableview内容将被切断。虽然如果我把这个代码拿出来,一切都很好。
有没有办法让两个世界都做到最好,我可以围绕顶角并且原始框架下方的内容不会被切断?
谢谢!
答案 0 :(得分:4)
这是解决方案。将表视图包含在外部UIView中(与表视图完全相同,并且在封闭视图中将表视图设置为0,0)。然后将插座连接到该封闭视图并在其上设置圆角顶角。
我认为这是Apple的一个错误。