У меня есть подкласс UIImageView под названием ShadowView, который отображает тень, которую можно использовать под любым. ShadowViews должны быть загружены из наконечника.stretchableImageWithLeftCapWidth: topCapHeight не работает в initWithCoder: подкласса UIImageView
В initWithCoder :, у меня есть следующий код:
- (id)initWithCoder:(NSCoder *)decoder {
self = [super initWithCoder:decoder];
if (self != nil) {
UIImage *shadowImage = [[UIImage imageNamed:@"drop_shadow_4_pix.png"] stretchableImageWithLeftCapWidth:4 topCapHeight:4];
[self setContentMode:UIViewContentModeScaleToFill];
[self setImage:shadowImage];
}
return self;
}
Когда я запустить приложение, хотя, это изображение не появляется.
Но если я изменю его
...
UIImage *shadowImage = [UIImage imageNamed:@"drop_shadow_4_pix.png"];
...
он отлично работает, но он растягивается неправильно.
Любые идеи относительно того, почему это происходит?
Редактировать: Это то же самое, когда я загружаю shadowview программно, с initWithFrame: реализовано аналогично initWithCoder :.
Другое Редактировать: Я думаю, что я решил проблему. Мне нужно было установить авторезистирующие маски.
9 пикселей на 9 пикселей, думаю. Центральная строка и столбец с крышками вдоль каждой стороны. –