При попытке получить динамически созданную UILabel для переноса текст исчезает

Я пытаюсь отобразить некоторый текст описания, который варьируется от пары слов до ста слов. Я установил UILabel для компенсации, используя код ниже

    descText.frame = CGRect(x: 115, y: 160, width: 465, height: 21)     
    descText.textAlignment = NSTextAlignment.Left
    descText.numberOfLines = 0
    descText.lineBreakMode = NSLineBreakMode.ByWordWrapping
    descText.sizeToFit()
    descText.Text = text
    dtlView.addSubview(descText)

Если я удаляю descText.sizeToFit(), текст снова появляется, но не переносится, то же самое происходит, если я пытаюсь установить высоту в CGRect на CGFloat.max.

Что мне не хватает?

2 ответа

Решение

Изменение позиции sizeToFit() после присвоения текста сделало работу, предложенную Бартломей выше.

Использовать ByCharWrapping Вместо того, чтобы использовать ByWordWrapping

Также обязательно позвоните sizeToFit() только после назначения текста.

descText.lineBreakMode = NSLineBreakMode.ByCharWrapping
descText.Text = text
descText.sizeToFit()
Другие вопросы по тегам