Я новичок в Swift, пришедший из веб-разработчика, поэтому я довольно привык к компонентам.Я пытаюсь создать форму и хотел бы повторно использовать текстовое поле и метку в других представлениях.Я создал новый класс, который наследуется от UIView, и хочу переопределить init для создания набора новых свойств.
Пока мой код
final class TextFormField: UIView {
var labelText: String
var secureText: Bool
var keyboardType: UIKeyboardType
override init(frame: CGRect) {
super.init(frame: frame)
}
init(labelText: String, secureText: Bool, keyboardType: UIKeyboardType){
self.labelText = labelText
self.secureText = secureText
self.keyboardType = keyboardType
super.init()
}
convenience init() {
self.init()
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
Ошибка, которую я получаю сейчас, равна Must call a designated initializer of the superclass 'UIView'
во втором init.
Как я могу переопределить init, чтобы получить еще 3 параметра?Нужно ли вместо этого делать расширение?
Заранее спасибо