Юникод в заголовке кнопки в XCode - PullRequest
12 голосов
/ 19 января 2012

Я пытаюсь отобразить греческую букву pi (unicode \ u03C0) на кнопке в качестве заголовка. Когда я пытаюсь установить заголовок с помощью графического редактора drag'n'drop, появляется слово "\ u03C0". Есть ли какой-нибудь способ установить текст в кодировке Юникод в графическом редакторе, или мне нужно сделать это программно? Если я должен сделать это программно, каков наилучший способ сделать это?

Я надеюсь, что кто-то может помочь мне с этим, так как мои поиски в Google были бесполезны.

Я использую iOS 5.0 XCode версия 4.2.1

1 Ответ

22 голосов
/ 19 января 2012

Интерфейсный Разработчик

Вы можете использовать Interface Builder для создания кнопки с любым символом Unicode в заголовке. Есть несколько методов.

  • Как предложил Томми, вы можете набрать Option-P, чтобы вставить греческий символ pi.
  • Как Томми также предложил, вы можете использовать Keyboard Viewer из меню Input, чтобы увидеть, какие символы вы можете печатать, используя клавиши выбора и управления. Вы также можете нажимать кнопки экранной клавиатуры в средстве просмотра клавиатуры, чтобы вставить эти символы в текущее текстовое поле (например, название вашей кнопки).
  • Вы можете использовать Просмотр символов Окно Emoji & Symbols в нижней части меню «Правка» (и, возможно, также меню «Ввод»), чтобы найти другие символы. Двойной щелчок по символу в Emoji & Symbols вставит его в текущее текстовое поле. Нажатие на значок в правом верхнем углу этого окна переключает между основным и расширенным режимами.
  • Вы можете включить шестнадцатеричный источник ввода Unicode (Системные настройки> Язык и текст> Источники ввода) и выбрать его в меню «Вход». Затем вы можете удерживать Option и вводить четыре шестнадцатеричные цифры, чтобы ввести символ Unicode. Например, вы можете удерживать Option и ввести «03c0», чтобы ввести греческий символ pi.
  • Если вы найдете символ где-то еще, например на веб-странице , вы можете скопировать его из источника и вставить в Interface Builder.

Objective-C

Если вы хотите установить заголовок кнопки в Objective-C, он выглядит следующим образом:

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

Вы можете вводить символы Unicode прямо в исходный код, используя любой из перечисленных выше методов, или вы можете использовать escape-последовательность Unicode, равную \u, за которой следуют четыре шестнадцатеричные цифры.

Символы вне плоскости Unicode 0 (базовая многоязычная плоскость, или BMP) требуют более четырех шестнадцатеричных цифр. Для них используйте \U и восемь шестнадцатеричных цифр. Пример:

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

Swift

Если вы хотите установить заголовок кнопки в Swift, он выглядит следующим образом:

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

Экранирующая последовательность Swift Unicode допускает от одной до восьми шестнадцатеричных цифр внутри фигурных скобок, поэтому такой же синтаксис для символа вне BMP:

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