У меня есть приписанная строка в Swift, которая отображает значок рядом с именем пользователя.Это прекрасно работает, моя реализация выглядит следующим образом:
attributedUsername = NSMutableAttributedString(string: "username")
let iconAttachment = NSTextAttachment()
let iconImage = UIImage(named: "userIcon")
iconAttachment.image = iconImage
iconAttachment.bounds = CGRect(x: 0, y: -3, width: 14, height: 14)
let iconString = NSAttributedString(attachment: verifiedAttachment)
attributedUsername.append(iconString)
usernameLabel.attributedText = attributedUsername
Однако иногда имя пользователя слишком велико, чтобы поместиться в одну строку, оборачивая имя пользователя во вторую строку (numberOfLines = 0
).Это нормально, но если имя пользователя достаточно длинное, чтобы поместиться на экране, тогда изображение переносится на следующую строку.Мне интересно, есть ли способ сохранить значок, завернутый в конец имени пользователя.То, чего я хочу достичь, где * - это значок, это:
username *
longer username *
a very long
username *
вместо:
username *
longer username *
a very long username
*
Так что в основном я хочу, чтобы значок слипался с последней частьюимя пользователя (если возможно).Если имя пользователя не содержит пробелов и слишком длинное, то оно должно быть просто перенесено на следующую строку, потому что это будет стандартная реализация.Есть предложения?