Как установить теневой градиент изображения на UIImageView iOS

Эй, я новичок в iPhone, и я пытался установить тень для UIImageView используя теневой градиент изображения, т.е. "Image-Shadow.png", используя приведенный ниже код.

    imageView.layer.shadowColor = [UIColor colorWithPatternImage:[UIImage 
    imageNamed:@"Image-Shadow.png"]].CGColor;

    imageView.layer.shadowOffset = CGSizeMake(0, 1);
    imageView.layer.shadowOpacity = 1;
    imageView.clipsToBounds = NO;
    imageView.layer.shouldRasterize = YES;

Моя проблема, я не получаю тень в моем UIImageView используя приведенный выше код. Подскажите, пожалуйста, это правильный способ добавить теневое изображение в UIImageView или можно другим способом?

3 ответа

Решение

Вот мое решение согласно моему требованию:

//set shadow gradient on image view

UIView *shadowView = [[UIView alloc] initWithFrame:imageView.frame]; //add view behind the image view

shadowView.layer.contents = (id) [UIImage imageNamed:@"Image-Shadow.png"].CGImage;

[imageView addSubview:shadowView];

Спасибо всем.

Проблема с изображением. Я не думаю, что вы можете предоставить изображение шаблона для создания тени! Дать правильный цвет, как [UIColor blackColor].CGColor и это должно работать.

Проблема в этой строке:

imageView.layer.shadowOffset = CGSizeMake(0, 1);

где вы устанавливаете тень, но не оставляете ей видимое пространство для отображения. Положительные или отрицательные значения должны быть даны обоим параметрам. Положительные значения растягиваются "вниз" и "вправо" от вашего взгляда, отрицательные значения растягиваются "влево" и "вверх" вашего взгляда.

Другие вопросы по тегам