Как мы можем динамически инициализировать свойства let в его конструкторе в Swift

Я создал подкласс UILabel в Swift, и я хочу настроить некоторые свойства надписи, такие как шрифты, размер цвета и т. Д., В зависимости от типа надписи.

Этот ярлык создан в файле раскадровки. Для определения типа лабиринта я создал собственное имя свойства "labelType", этот labelType никогда не изменит своего значения после его назначения. Поэтому мы должны создать это свойство 'let', но проблема в том, что нам нужно определить это свойство перед вызовом его initWithCoder.

Как мы можем динамически установить его начальное значение в initWithCoder? (или любой другой конструктор по умолчанию?)

в настоящее время я сделал свойство как var, и я устанавливаю значение этого свойства из самой раскадровки (пользовательские атрибуты времени выполнения)

Вот код

class BMLabel: UILabel {

    var labelType:NSNumber!
    required init(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)!
    }
    override func awakeFromNib() {
        self.setUpProperties()

    }
    func setUpProperties() {
        switch(labelType) {
        case 1:
            self.font = Constants.FONTS.LIST_UUID_FONT

Изображение раскадровки

0 ответов

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