objective-c - XCode 中按钮标题中的 Unicode

标签 objective-c xcode button unicode title

我试图在按钮上显示希腊字母 pi (unicode\u03C0) 作为标题。 当我尝试使用拖放图形编辑器设置标题时,显示“\u03C0”一词。 有什么方法可以在图形编辑器中设置 unicode 文本,还是我需要以编程方式进行设置? 如果我必须以编程方式执行此操作,最好的方法是什么?

我希望有人能帮我解决这个问题,因为我的谷歌搜索是徒劳的。

我使用 iOS 5.0 XCode 版本 4.2.1

最佳答案

界面生成器

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

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

Objective-C

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

self.myButton.titleLabel.text = @"π or \u03c0";

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

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

self.myButton.titleLabel.text = @"💖 or \U0001f496";

swift

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

myButton.titleLabel.text = "π or \u{3c0}"

Swift unicode 转义序列允许在大括号内使用 1 到 8 个十六进制数字,因此对于 BMP 之外的字符语法相同:

myButton.titleLabel.text = "💖 or \u{1f496}"

关于objective-c - XCode 中按钮标题中的 Unicode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8917215/

相关文章:

ios - 为什么在主队列更新 UI 后私有(private)队列调度 _async 更新 UI?

iphone - 如何创建流畅的图像动画

ios - Xcode - 每出现 x 次 View 就显示广告

c++ - win32按钮一直闪烁

java - HTML 按钮未重定向到 Java 邮件正文中的给定链接

objective-c - cocoa 旋转元素在窗口调整大小后消失

ios - Xcode 5,如何在所示场景中使用带有方向的自动布局?

ios - 如何设置 userinteractionEnabled : to NO for an AVPlayerViewController?

xcode - 如何通过短信发送用户经纬度坐标

css - Zurb 基金会 : How do you make buttons smaller on resize to a smaller screen?