Ios 通过RubyMotion在UILabel中使用unicode字符

Ios 通过RubyMotion在UILabel中使用unicode字符,ios,unicode,rubymotion,Ios,Unicode,Rubymotion,我正在尝试使用Unicode专用空格字符,并将其设置为UILabel的text属性。这是使用RubyMoon 我想要的字符是该系列的一部分,是U+1F554(🕔;) 我创建了一个新的ui标签: @lblIcon = UILabel.alloc.initWithFrame([[0,(self.view.frame.size.height/2) - 128],[self.view.frame.size.width,96]]) 并使用pack语法将其文本设置为Unicode字符 @lb

我正在尝试使用Unicode专用空格字符,并将其设置为
UILabel
text
属性。这是使用RubyMoon

我想要的字符是该系列的一部分,是
U+1F554
🕔;

我创建了一个新的
ui标签

@lblIcon = UILabel.alloc.initWithFrame([[0,(self.view.frame.size.height/2) - 128],[self.view.frame.size.width,96]])
并使用
pack
语法将其文本设置为Unicode字符

@lblIcon.text = [0x1f554].pack('U*')
然后应用图标字体并将其添加到视图中:

ico_font = UIFont.fontWithName("Entypo", size:48)
@lblIcon.font = ico_font
self.view.addSubview @lblIcon
当我运行
rake
并尝试启动应用程序时,会收到以下崩溃消息:

*** Terminating app due to uncaught exception 'RuntimeError', reason: 'ui_label.rb:16:in `font=:': NSInvalidArgumentException: NSConcreteMutableAttributedString addAttribute:value:range:: nil value (RuntimeError)
我也试过了

@lblIcon.text = [0x1f554].pack('U*') + ""

无济于事


创建由unicode字符组成的字符串的正确方法是什么,适合在
UILabel
中使用?

以下是一个完整的gem解决方案


看起来他使用的是
index.hex.chr(Encoding::UTF_8)

下面是一个完整的gem解决方案,有人用它来做这件事

看起来他使用了
index.hex.chr(Encoding::UTF_8)

甘特曼是对的

将标签文本设置为“0x1f554”。hex.chr(编码::UTF_8)应该可以工作。

GantMan是正确的


将标签文本设置为“0x1f554”。hex.chr(Encoding::UTF_8)应该可以工作。

我认为提交支持请求是最好的选择。这听起来像是RubyMotion的bug。我认为提交支持请求是最好的选择。这听起来像是一个RubyMotion bug。
@lblIcon.text = "\U1F554"