В моем приложении я использую ActiveLabel
fram Github.UILabel вертикальное выравнивание
В этом случае моя метка не отображает текст в середине UILabel. Если я использую обычный UILabel, он отлично работает, но когда он настраивается на ActiveLabel, он выглядит следующим образом.
(изображение берется во время выполнения)
Я думаю, что это код, чтобы играть с выравниванием как-то:
/// add line break mode
private func addLineBreak(attrString: NSAttributedString) -> NSMutableAttributedString {
let mutAttrString = NSMutableAttributedString(attributedString: attrString)
var range = NSRange(location: 0, length: 0)
var attributes = mutAttrString.attributesAtIndex(0, effectiveRange: &range)
let paragraphStyle = attributes[NSParagraphStyleAttributeName] as? NSMutableParagraphStyle ?? NSMutableParagraphStyle()
paragraphStyle.lineBreakMode = NSLineBreakMode.ByWordWrapping
if let lineSpacing = lineSpacing {
paragraphStyle.lineSpacing = CGFloat(lineSpacing)
}
attributes[NSParagraphStyleAttributeName] = paragraphStyle
mutAttrString.setAttributes(attributes, range: range)
return mutAttrString
}
Любые идеи, как я могу сделать это посередине следующим образом:
(Изображение взято из раскадровки)
В раскадровке добавить вертикальные и горизонтальные ограничения для родительского представления. Также убедитесь, что вы делаете это в представлении Any/Any в режиме раскадровки. – Alex
@Alex. Я не использую автоматический макет в своем приложении. –
Ах, справедливо, позвольте спросить, почему? Он решает много головных болей вместо ручного создания ограничений. – Alex