XCode中按钮标题中的Unicode

use*_*134 12 unicode xcode objective-c button title

我试图在按钮上显示希腊字母pi(unicode\u03C0)作为标题.当我尝试使用drag'n'drop图形编辑器设置标题时,单词"\ u03C0"显示.有没有办法在图形编辑器中设置unicode文本,还是需要以编程方式进行?如果我必须以编程方式进行,那么最好的方法是什么?

我希望有人可以帮助我,因为我的谷歌搜索是徒劳的.

我使用iOS 5.0 XCode版本4.2.1

rob*_*off 22

Interface Builder

您可以使用Interface Builder在其标题中创建一个包含任何Unicode字符的按钮.有几种方法.

  • 正如Tommy建议的那样,你可以输入Option-P来插入一个希腊字符pi.
  • 正如Tommy还建议的那样,您可以使用"输入"菜单中的"键盘查看器"查看可以使用选项和控制键键入的字符.您也可以按键盘查看器中的屏幕键盘按钮将这些字符插入当前文本字段(例如按钮的标题).
  • 您可以使用" 编辑"菜单底部的" 字符查看器表情符号和符号"窗口(可能还有"输入"菜单)查找其他字符.双击表情符号和符号中的字符会将其插入当前文本字段.单击此窗口右上角的图标可在基本模式和高级模式之间切换.
  • 您可以启用Unicode十六进制输入源(系统首选项>语言和文本>输入源),然后从"输入"菜单中选择它.然后,您可以按住Option并键入四个十六进制数字以输入Unicode字符.例如,您可以按住Option并键入"03c0"以输入希腊字符pi.
  • 如果您在其他位置找到该字符,例如在网页上,您可以从源中复制它,然后将其粘贴到Interface Builder中.

Objective-C的

如果要在Objective-C中设置按钮的标题,它看起来像这样:

self.myButton.titleLabel.text = @"? or \u03c0";
Run Code Online (Sandbox Code Playgroud)

您可以使用上面列出的任何方法在源代码中键入Unicode字符,也可以使用Unicode转义序列,\u后跟四个十六进制数字.

Unicode平面0(基本多语言平面或BMP)之外的字符需要四个以上的十六进制数字.对于他们,使用\U后跟八个十六进制数字.例:

self.myButton.titleLabel.text = @" or \U0001f496";
Run Code Online (Sandbox Code Playgroud)

迅速

如果你想在Swift中设置按钮的标题,它看起来像这样:

myButton.titleLabel.text = "? or \u{3c0}"
Run Code Online (Sandbox Code Playgroud)

Swift unicode转义序列允许括号内有一到八个十六进制数字,因此它与BMP之外的字符的语法相同:

myButton.titleLabel.text = " or \u{1f496}"
Run Code Online (Sandbox Code Playgroud)