Как я могу поместить изображение позади imageView - PullRequest
0 голосов
/ 15 апреля 2011

У меня есть изображение, которое содержит несколько слоев. Пользователь может установить изображение в качестве слоя. Однако, когда нет доступного изображения, я хотел бы иметь заменяющее изображение.

Мне кажется, у меня есть два варианта:

  1. проверить, загружено ли изображение (снятое фото) в мой каталог. если нет, поместите другое изображение.
  2. размещение другого изображения (photo_icon.png) в задней части UIImageView (image1). Если фотография не была сделана, изображение становится видимым.

Вот фрагмент моего кода.

NSString *docDir = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
    NSString *pngFilePath = [NSString stringWithFormat:@"%@/photo1.png",docDir];
    UIImage *img = [[UIImage alloc] initWithContentsOfFile:pngFilePath];
    [image1 setImage:img];
    image1.layer.cornerRadius = 15.0;
    image1.layer.masksToBounds = YES;

    CALayer *sublayer = [CALayer layer];
    image1.layer.borderColor = [UIColor blackColor].CGColor;
    image1.layer.borderWidth = 3.5;
    [image1.layer addSublayer:sublayer];    

    CALayer *imageLayer = [CALayer layer];
    imageLayer.frame = image1.bounds;
    imageLayer.cornerRadius = 10.0;
    imageLayer.contents = (id) [UIImage imageNamed:@"Upperlayer.png"].CGImage;
    imageLayer.masksToBounds = YES;
    [sublayer addSublayer:imageLayer];

замена image1 для изображения, которое я использую:

    CALayer *imageBackLayer = [CALayer layer];
    imageBackLayer.frame = image1.bounds;
    imageBackLayer.cornerRadius = 10.0;
    imageBackLayer.contents = (id) [UIImage imageNamed:@"photo_icon.png"].CGImage;
    imageBackLayer.masksToBounds = NO;
    [sublayer insertSublayer:imageBackLayer below: image1.layer ];

Заранее спасибо!

1 Ответ

0 голосов
/ 15 апреля 2011

Вы можете использовать непрозрачность для изображения, чтобы показать / скрыть.

...