UITextView包含粗体和常规字符串

时间:2014-12-29 13:34:52

标签: string swift nsstring uitextview

我想在我的UITextView中添加一个字符串,我想要一些粗体和一些普通字体。它应该怎么做?我有一个我想在下面实现的例子。

由于

myTextView.text = "This is my string. "

我的字符串

以下是我的尝试。

    // Define string attributes
    let font = UIFont(name: "Georgia", size: 18.0) ?? UIFont.systemFontOfSize(18.0)
    let textFont = [NSFontAttributeName:font]

    let fontItal = UIFont(name: "Georgia-Italic", size: 40.0) ?? UIFont.systemFontOfSize(40.0)
    let italFont = [NSFontAttributeName:fontItal]

    // Create a string that will be our paragraph
    let para = NSMutableAttributedString()

    // Create locally formatted strings
    let attrString1 = NSAttributedString(string: "This is ", attributes:textFont)
    let attrString2 = NSAttributedString(string: "my", attributes:italFont)
    let attrString3 = NSAttributedString(string: " string.", attributes:textFont)

    // Add locally formatted strings to paragraph
    para.appendAttributedString(attrString1)
    para.appendAttributedString(attrString2)
    para.appendAttributedString(attrString3)

    // Define paragraph styling
    let paraStyle = NSMutableParagraphStyle()
    paraStyle.firstLineHeadIndent = 15.0
    paraStyle.paragraphSpacingBefore = 10.0

    // Apply paragraph styles to paragraph
    para.addAttribute(NSParagraphStyleAttributeName, value: paraStyle, range: NSRange(location: 0,length: para.length))


    // Add string to UITextView

    myTextView.attributedText = para

1 个答案:

答案 0 :(得分:9)

请参阅此代码

@IBOutlet weak var textField: UITextField!
@IBOutlet weak var textView: UITextView!

...

var text: NSString = "This is my string"
var attributedText: NSMutableAttributedString = NSMutableAttributedString(string: text)

attributedText.addAttributes([NSFontAttributeName: UIFont.boldSystemFontOfSize(14)], range: NSRange(location: 5, length: 2))
attributedText.addAttributes([NSFontAttributeName: UIFont.boldSystemFontOfSize(14)], range: NSRange(location: 11, length: 6))

textField.attributedText = attributedText
textView.attributedText = attributedText

这是输出: enter image description here