我想在我的项目中的所有UIImageViews中添加一些圆角。我已经使代码工作了,但是必须将其应用于每个图像。我应该子类化UIImageView来添加它吗?如果是这样,有人可以给我一些有关如何执行此操作的指示吗?

这是代码

- (void)viewDidLoad {
    [super viewDidLoad];
    NSString *mainpath = [[NSBundle mainBundle] bundlePath];
    welcomeImageView.image = [UIImage imageWithContentsOfFile:[mainpath stringByAppendingString:@"/test.png"]];
    welcomeImageView.layer.cornerRadius = 9.0;
    welcomeImageView.layer.masksToBounds = YES;
    welcomeImageView.layer.borderColor = [UIColor blackColor].CGColor;
    welcomeImageView.layer.borderWidth = 3.0;
    CGRect frame = welcomeImageView.frame;
    frame.size.width = 100;
    frame.size.height = 100;
    welcomeImageView.frame = frame;
}

最佳答案

您可以为UIImage使用类别,这是对Class进行子类化的另一种方法,有时只需进行很小的更改就更容易。

例如,添加一个返回带有圆角属性集的UIImage的方法。

+(UIImage *)imageWithContentsOfFile:(NSString *)file cornerRadius:(NSInteger)...

有关Objective-c类别的更多信息,请参见http://macdevelopertips.com/objective-c/objective-c-categories.html

09-25 20:39