Adding underline to UILabel attributed string from the storyboard fails
Here is the solution in storyboard: Open the Attribute Inspector (make sure label is selected), Change the dropdown value from 'Plain' to 'Attributed'. Now a a small text editor will be visible under the font of the label. Select the text of the label, right click and change the font to 'underline'.
I also have attached a screenshot and successfully underlined a text using storyboard in XCode 7.0.1
Underline your text in TextEdit(cmd-U) and copy-paste it in Attribute Inspector > Label > Text > Attributed.
Select label -> Attribute editor -> Title = Attributed
Select the text of the label in the text view in the editor -> Right click -> Font -> check Underline
If the change is not visible -> resize the label
You can make text underline from storyboard like this. But when you change the text programatically it will override and underline will gone. So if you have to change the text on runtime. Do this.
For Swift 3
let text = myLabel.text
let textRange = NSMakeRange(0, (text?.characters.count)!)
let attributedText = NSMutableAttributedString(string: text!)
attributedText.addAttribute(NSUnderlineStyleAttributeName , value: NSUnderlineStyle.styleSingle.rawValue, range: textRange)
myLabel.attributedText = attributedText
For Swift 4
let text = myLabel.text
let textRange = NSRange(location: 0, length: (text?.count)!)
let attributedText = NSMutableAttributedString(string: text!)
attributedText.addAttribute(NSAttributedStringKey.underlineStyle, value: NSUnderlineStyle.styleSingle.rawValue, range: textRange)
myLabel.attributedText = attributedText