我怎么能绕两个角落?

时间:2011-12-13 08:28:58

标签: iphone objective-c rounded-corners

在iPhone中,我可以使用

view.layer.cornerRadius = 10;
让角落圆,但我不希望四角是圆的,我只想底部两轮。我怎么能这样做?谢谢。

2 个答案:

答案 0 :(得分:1)

一个简单但有点难看的解决方案是将两个部分层叠在一起使用,以便其中一个“隐藏”顶部圆角。

更新发现了这个问题Round two corners in UIView,它有更多正确和更好的解决方案。

答案 1 :(得分:0)

以下是我用于自定义表格视图单元格的解决方案:

假设一个单元格高度为44。

添加高度为66的子视图,将其命名为roundedCornerContainer

在子视图中,添加单元格的内容。

将IBOutlet添加到roundedCornerContainer

配置单元格时:

#import <QuartzCore/QuartzCore.h>

roundedCornerContainer.layer.cornerRadius = 8;
roundedCornerContainer.layer.masksToBounds = YES;

不要忘记您需要设置单元格的原型来剪辑子视图,以防止roundedCornerContainer延伸。

最终结果是分组的UITableView单元格的左上角和右上角变圆,而左下角和右下角显示为90度(底部圆角被单元格剪切。

如果您需要使用底部分组单元格重复此技巧,只需更改单元格原型中roundedCornerContainer的原点,将其原点移动22点。

相关问题