1

我想在 a 中显示一个字符串UILabel,其中一部分具有删除线样式。看来我不能只将删除线属性放在字符串的一部分上。如果它在整个字符串上,则显示;但如果它在字符串的一部分上,则不会。这是一个错误吗?我错过了什么吗?

这是一些示例代码和屏幕截图。

class ViewController: UIViewController {

    @IBOutlet weak var label1: UILabel!
    @IBOutlet weak var label2: UILabel!

    override func viewDidLoad() {
        super.viewDidLoad()

        let strikeAttrs = [NSStrikethroughStyleAttributeName: 
                           NSUnderlineStyle.styleSingle.rawValue]

        let str1 = NSMutableAttributedString()
        str1.append(NSAttributedString(string: "aaa", attributes: strikeAttrs))

        let str2 = NSMutableAttributedString()
        str2.append(NSAttributedString(string: "aaa", attributes: nil))
        str2.append(NSAttributedString(string: "bbb", attributes: strikeAttrs))

        label1.attributedText = str1
        label2.attributedText = str2
    }

}

屏幕如下所示:

在此处输入图像描述

4

0 回答 0