使用功能修改多个图像

时间:2013-10-02 19:47:18

标签: ios objective-c arrays function

C大师!我需要你的帮助! 我有以下代码块,我用来修改图像,使其呈椭圆形,带有彩色边框。它完美无缺。现在,我还有13个其他图像,并且不想为每个图像输出这个图像。我相信将它们存储到一个数组中并传递给一个函数要容易得多,但是我正在踩到它的确切方式。

CALayer *A = [img1 layer];
[A setMasksToBounds:YES];
[A setCornerRadius:31.0];
[A setBorderWidth:2.5];
[A setBorderColor:[[UIColor blueColor] CGColor]];

我希望有人可以教我并帮助将其转化为功能性学习体验! 谢谢你的帮助。

2 个答案:

答案 0 :(得分:1)

  

将它们存储到数组中并传递给函数

烨。这是一个选择:

- (void)makeImageViewsOval:(NSArray*)imgArray {
    for (UIImageView *currentImage in imgArray) {
        CALayer *A = currentImage.layer;
        [A setMasksToBounds:YES];
        [A setCornerRadius:31.0];
        [A setBorderWidth:2.5];
        [A setBorderColor:[[UIColor blueColor] CGColor]];
    }
}

然后,您可以轻松地提供UIImageView这样的内容:

[self makeImageViewsOval:@[imgView1, imgView2, imgView3]];

答案 1 :(得分:0)

NSArray中添加所有图像之前,例如:

NSArray *images = [[NSArray alloc] initWithObjects: img1, img2, img3, img4, img5, nil];

然后你只需制作一个类似

的方法
-(void)imagesTrasformerByArray:(NSArray *)images{

    for(UIImageView *image in images){

    CALayer *A = [imgage layer];
    [A setMasksToBounds:YES];
    [A setCornerRadius:31.0];
    [A setBorderWidth:2.5];
    [A setBorderColor:[[UIColor blueColor] CGColor]];

    }


}