Как я могу использовать addAttribute и NSRANGE в Swift 3

Привет я пытаюсь использовать addAttribute в Swift3.

Я хочу установить жирный только IDNAME.

Вот что я пытаюсь это сделать.

let boldUsername = NSMutableAttributedString(string: "IDNAME hi nice 2 meet you :D #HELLOW")


//            boldUsername.addAttribute(NSFontAttributeName, value: UIFont(name: "SFUIText-Bold", size: 14)!, range: (boldUsername.string as NSString).range(of: " "))

            boldUsername.addAttribute(NSFontAttributeName, value: UIFont(name: "SFUIText-Bold", size: 14)!, range: NSRange(location: 0, length: 5))

Как мне получить индекс IDNAME, т.е. каждый раз разный?

-> Есть ли способ разделить пространство и получить индекс?

1 ответ

Решение

Вам нужно сделать что-то вроде этого.

let personName = "Black"
let wholeStr = "\(personName) hi nice 2 meet you :D #HELLOW"
let boldUsername = NSMutableAttributedString(string: wholeStr)
boldUsername.addAttribute(NSFontAttributeName, value: UIFont(name: "SFUIText-Bold", size: 14)!, range: (wholeStr as NSString).range(of: personName))
Другие вопросы по тегам