Я хочу иметь возможность передавать процентное значение в CGRect
Я создал класс Percentage для получения ввода, а затем создал четыре значения (x, y, width, height)
Теперь мне нужно создать расширение для CGRect, чтобы иметь возможность использовать значения Percentage в нем.Расширение возвращает ошибку.
extension CGRect {
init(x: Percentage, y: Percentage, width: Percentage, height: Percentage) {
self.init(x: Percentage.x, y: Percentage.y, width: Percentage.width, height: Percentage.height)
ОШИБКА: элемент экземпляра 'x' нельзя использовать для типа 'Процент'
}
}
class Percentage {
let x: CGFloat
let y: CGFloat
let width: CGFloat
let height: CGFloat
init(_ value: CGFloat) {
self.x = UIScreen.main.bounds.width * value
self.y = UIScreen.main.bounds.height * value
self.width = UIScreen.main.bounds.width * value
self.height = UIScreen.main.bounds.height * value
}
}
Спасибо за вашу помощь;)
РЕДАКТИРОВАТЬ:
Я хочу иметь возможность использовать его следующим образом:
CGRect(x: Percentage(0.5), y: 50, width: 100, height: 100)