【发布时间】:2011-05-26 07:07:19
【问题描述】:
【问题讨论】:
标签: iphone objective-c
【问题讨论】:
标签: iphone objective-c
您可以通过操作视图的layer 及其masksToBounds 属性来做到这一点。我在UIView 类别中有以下代码:
#import <QuartzCore/QuartzCore.h>
...
- (void)addRoundedCornersWithRadius:(NSInteger)cornerRadiusInPixels
{
self.layer.cornerRadius = cornerRadiusInPixels;
self.layer.masksToBounds = YES;
self.opaque = NO;
}
- (void)makeEndsRounded
{
CGFloat minSide = fmin(self.bounds.size.width, self.bounds.size.height);
[self addRoundedCornersWithRadius:minSide/2];
}
【讨论】:
CALayer.h,但导入文件而不是框架没有任何好处。相反,像 CALayer.h 这样的头文件包含有帮助的 cmets,如果您有问题,可以查看这些。
据我所知,UIViews 是由CGRects 指定的,因此它们在技术上始终是矩形的。如果你想要一个圆角效果,你需要一个圆角的背景图片。
【讨论】: