Проблема установки свойства shadowColor в UIImageView - PullRequest
2 голосов
/ 24 июня 2011
NSString *imgPath = [[jsonObjects objectAtIndex:indexPath.row] valueForKey:@"image"];
NSData *imgData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:imgPath]];
UIImageView *img = [[UIImageView alloc] initWithFrame:CGRectMake(20, 7, 44, 44)];
img.image = [UIImage imageWithData:imgData];
img.layer.shadowColor = [UIColor blackColor];
img.layer.shadowOffset = CGSizeMake(1, 2);
[cell addSubview:img];
[imgPath release];
[imgData release];
[img release];

При использовании этого кода я получаю следующее предупреждение:

Передача аргумента 1 из 'setShadowColor:' из несовместимого типа указателя

Код компилируетсяочень хорошо, и изображение отображается правильно, но без тени.

Что я делаю не так?

Ответы [ 3 ]

6 голосов
/ 02 мая 2012

Полагаю, уже немного поздно.

Это как Дасдом уже писал:

img.layer.shadowColor = [[UIColor blackColor] CGColor];
img.layer.shadowOpacity = 1.0f;
img.layer.shadowRadius = 8.0f;

Но вы должны убедиться, что imageView не обрезается до своего кадра:

img.clipsToBounds = NO;

Michael

0 голосов
/ 03 сентября 2012

Я думаю, вы должны попробовать это:

sender.layer.shadowColor=[[UIColor yellowColor]CGColor];
sender.layer.shadowRadius=10;
sender.layer.shadowOffset=CGSizeMake(1, 1);
sender.layer.shadowOpacity=1;

здесь отправитель UIButton тип.

0 голосов
/ 24 июня 2011

Измените строку

img.layer.shadowColor = [UIColor blackColor];

на

img.layer.shadowColor = [[UIColor blackColor] CGColor];

и добавьте

img.layer.shadowOpacity = 1.0f;
img.layer.shadowRadius = 8.0f;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...