OGeek|极客世界-中国程序员成长平台

标题: objective-c - View 上的圆角 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 15:08
标题: objective-c - View 上的圆角

我使用以下方法在我的应用程序中的 View 上获得圆角:

(objective-c
hoursTable.layer.cornerRadius = 5.0;
[hoursTable setClipsToBounds:YES];

(my actual code is in rubymotion
self.view.layer.cornerRadius = 10
self.view.layer.masksToBounds = true

现在该 View 的所有角都用 10pt 圆角,我如何只将效果应用于左上角和右上角,而左下角和右下角保持正方形?



Best Answer-推荐答案


我在 UIView 上有这个代码的类别:

- (void)setRoundedCornersUIRectCorner)corners radiusCGSize)size {
UIBezierPath* maskPath = [UIBezierPath bezierPathWithRoundedRect:self.bounds byRoundingCorners:corners cornerRadii:size];

CAShapeLayer* maskLayer = [[CAShapeLayer alloc] init];
maskLayer.frame = self.bounds;
maskLayer.path = maskPath.CGPath;

self.layer.mask = maskLayer;
[maskLayer release];
}

如果您使用 ARC,请删除最后一行。

使用示例:

[hoursTable setRoundedCorners:UIRectCornerTopLeft|UIRectCornerTopRight radius:CGSizeMake(5.0, 5.0)];

关于objective-c - View 上的圆角,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11613321/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (https://ogeek.cn/) Powered by Discuz! X3.4