В моем приложении у меня есть метод, который преобразует UIView
в UIImage
. Он отлично работает на каждом устройстве, за исключением iPhone 6 plus, который имеет более высокую плотность пикселей.UIImage масштабируется на iPhone 6Plus
Я создаю selectionIndicatorImage
для моего UITabBar
, преобразуя серый вид в UIImage
. Я знаю, что это, вероятно, не самая лучшая практика в этом сценарии, но в любом случае мне нужен этот метод, отлично работающий для других вещей в приложении.
Это мой UIImage
инициализатор:
convenience init?(view: UIView) {
UIGraphicsBeginImageContextWithOptions(view.bounds.size, view.opaque, 0.0)
view.layer.renderInContext(UIGraphicsGetCurrentContext())
var img = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
self.init(CGImage: img.CGImage)
}
Это порождает следующие результаты:
iPhone 6 Plus
iPhone 6
Любые мысли?
Приветствия
попробуйте использовать клипыToBounds = YES property – Mukesh
Спасибо @muku, но это не решает мою проблему , Мне нужно, чтобы 'UIImage' был правильно масштабирован, а не обрезан –