2016-11-01 3 views
1

Я поместил UILabel в свою рассылку расширения контента для уведомлений и настроил ее с помощью автоматической компоновки. Я также установил numberOfLines равным 0. В раскадровке это выглядит отлично, но когда я использую его на своем устройстве, ярлык выходит из одной строки. Я что-то пропустил?Многострочный UILabel не работает в уведомлении Content Extension

Edit (ScreenShots добавлено):

enter image description here

enter image description here

Кроме того, когда приходит новое уведомление, я вижу пустой информации, и она обновляется через несколько секунд.

enter image description here

Больше ScreenShots Добавлено:

Количество линий устанавливается на 0.

и в коде я устанавливаю это так:

titleString.text = "Saturday SuperBowl Saturday SuperBowl Saturday SuperBowl" 

Но все же это идет как одна линия.

enter image description here

+0

Вы ... в конце 1 ярлыка линии? если да, возможно, вы программно программируете как 1 строка ... если нет, то где-то вы возитесь со ограничениями ... –

+0

Нет, он установлен как 0 строк. И проблема только в этом расширении. –

+0

Вы видите ... в конце ярлыка? вы можете опубликовать снимок экрана ... –

ответ

0

Вы должны установить uilabels preferredMaxLayoutWidth. Вы можете сделать это в вашем контроллере представления:

override func viewDidLayoutSubviews() { 
    super.viewDidLayoutSubviews() 
    titleString.preferredMaxLayoutWidth = titleString.frame.size.width 
    self.view.layoutIfNeeded() 
} 

или подклассы вашего UILabel:

override func layoutSubviews() { 
    self.preferredMaxLayoutWidth = self.frame.size.width 
    super.layoutSubviews 
} 
+0

Я использую автозапуск. –

+0

Даже поэтому вам нужно использовать то, что я написал выше! –

Смежные вопросы