#ios #swift #uitableview #uilabel #nsattributedstring
#iOS #swift #uitableview #uilabel #nsattributedstring
Вопрос:
У меня есть UILabel в ячейке таблицы, я присвоил ей пользовательский шрифт, вес и цвет в storyboard. В cellForRowAt
когда я изменяю значение метки, это не сохраняет атрибуты метки, назначенные в раскадровке.
Почему она не работает в ячейке таблицы, в то время как она работает иначе, если не в ячейке таблицы?
// this doesn't preserve attributes for name assigned in storyboard
cell.name.text = "Name"
Чтобы это сработало, я должен создать приписываемую строку
cell.name.attributedText = NSAttributedString(string: "Name",
attributes: [NSAttributedString.Key.font: MyFont, NSAttributedString.Key.foregroundColor: .white]
Комментарии:
1. Пожалуйста, покажите скриншот вашей раскадровки с помощью attributed inspector?
2. Убедитесь, что вы выбрали
Plain
forText
в свойстве Label в раскадровке.3. Это строка, приписываемая в раскадровке. В раскадровке нет ничего плохого. Это происходит со всеми ярлыками и кнопками, приписываемыми моей ячейке.