CALayer получает 1x изображение из Images.xcassets для iPhone6 ​​и 6Plus

Следующий code я использую для добавления CALayer в UIScrollView Layer,

UIImage *icon = [UIImage imageNamed:@“testImage”];
CGFloat imageWidth = icon.size.width;
CGFloat imageHeight = icon.size.height;
CGFloat y = 10;
CGFloat x = 10;
CGRect rect = CGRectMake(x, y, imageWidth, imageHeight);
CALayer *imageLayer = [CALayer layer];
imageLayer.frame = rect;
imageLayer.contents = (id)icon.CGImage;
[self.scrollView.layer addSublayer:imageLayer];

Спасибо за помощь.

Пожалуйста, предложите, если какой-либо другой idea у тебя есть. лайк example прямо получить @3x изображение из Images.xcassets,

1 ответ

Пожалуйста, прочитайте о свойстве contentsScale в классе CALayer.

Он не устанавливается автоматически на 3.0 для iPhone6 ​​Plus. Автоматическая настройка имеет место только для классов просмотра. Вы должны вручную установить его для объектов класса CALayer.

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