Swift3 如何在UILabel中显示货币值?

Swift3 如何在UILabel中显示货币值?,swift3,uilabel,Swift3,Uilabel,设计标签 我想在单个标签中设计如图所示的标签 有人能帮我吗? -使用属性字符串,并为“99”指定更小的字体大小和更高的基线。以下是Swift 4中的一个示例(抱歉,我没有时间将其向后翻译为Swift 3或更早版本): 现在将其分配给标签的attributeText。玩弄其他细节由你决定 Swift 3.0中的 let fnt = UIFont(name: "Helvetica", size: 50) let attributedString = NSMutableAttributedS

设计标签

我想在单个标签中设计如图所示的标签

有人能帮我吗?
-

使用属性字符串,并为“99”指定更小的字体大小和更高的基线。以下是Swift 4中的一个示例(抱歉,我没有时间将其向后翻译为Swift 3或更早版本):

现在将其分配给标签的
attributeText
。玩弄其他细节由你决定

Swift 3.0中的

let fnt = UIFont(name: "Helvetica", size: 50)
    let attributedString = NSMutableAttributedString(string: "$499", attributes: [NSFontAttributeName: fnt?.withSize(50) as Any])
    attributedString.setAttributes([NSFontAttributeName: fnt?.withSize(20) as Any, NSBaselineOffsetAttributeName: 20], range: NSRange(location: 2, length: 2))
    label.attributedText = attributedString

查看
NSAttributedString
。使用
NumberFormatter
NSAttributedString
。我尝试了NSAttributedString,但数字并排设置,但没有如图所示。这很容易。将“99”格式化为较小的字体大小和较高的基线。对你来说最难的是什么?
let fnt = UIFont(name: "Helvetica", size: 50)
    let attributedString = NSMutableAttributedString(string: "$499", attributes: [NSFontAttributeName: fnt?.withSize(50) as Any])
    attributedString.setAttributes([NSFontAttributeName: fnt?.withSize(20) as Any, NSBaselineOffsetAttributeName: 20], range: NSRange(location: 2, length: 2))
    label.attributedText = attributedString