编辑:
找到了一种可以进行大量转换的方法,但是看起来很草率:
let myStr = "1f601"
let str = String(Character(UnicodeScalar(Int(myStr, radix: 16)!)!))
我正在尝试执行以下操作:
for _ in 1...2 {
let emojiButton = UIButton()
emojiButton.backgroundColor = UIColor.green
emojiButton.heightAnchor.constraint(equalToConstant: 20.0).isActive = true
emojiButton.titleLabel!.font = UIFont(name: "AppleColorEmoji", size: CGFloat(16.0))
emojiButton.setTitle(str, for: .normal)
stackView.addArrangedSubview(emojiButton)
}
由于某种原因,这给出了两个不同的符号,而不是预期的表情符号,结果如下:
因此,现在我对%C格式为什么不显示unicode以及为什么它显示两个不同字符感到困惑。
最佳答案
let myStr = "\u{1f601}"
这可能是在Swift中指定Unicode点的最简单方法。
关于ios - 如何在Swift 3中将unicode表情符号设置为UIButton的标题?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42498455/