Внутри пользовательских UIView
, я переопределил draw()
функции. Мне нужно нарисовать изображение в круговой макете. Кроме того, если это возможно, мне нужно изменить размер изображения, сохраняя аспект заполнения/соответствия. Как это сделать?Как нарисовать круговой UIImage на графике ядра
Код:
@IBDesignable class ScoreGraphView: UIView {
override func draw(_ rect: CGRect) {
let iv = UIImageView(image: UIImage(named: "women"))
iv.frame = CGRect(x: 0, y: 0, width: rect.width, height: rect.height)
iv.layer.cornerRadius = 20
iv.clipsToBounds = true
iv.layer.masksToBounds = true
iv.backgroundColor = UIColor.clear
iv.draw(CGRect(x: 0, y: 0, width: rect.width, height: rect.height))
}
}
Это выше линии могут быть использованы для нанесения изображения. cornerRadius
/masksToBounds
не работают.
Заранее благодарен!
'cornerRadius' работает только если вы также установили 'masksToBounds = true' – Tj3n
@ Tj3n Вы имеете в виду clipToBounds = true? Я тоже пробовал, но не повезло. –
'iv.layer.masksToBounds = true' не работает? Это отлично работает для меня, может быть, в вашей 'draw'-функции вы переопределяете что-то? – Tj3n