Юникод в заголовке кнопки в XCode

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

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

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

Ответ 1

Конструктор интерфейсов

Вы можете использовать Interface Builder для создания кнопки с любым символом Юникода в своем названии. Существует несколько методов.

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

Objective-C

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

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

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

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

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

Swift

Если вы хотите установить название кнопки в Swift, это выглядит так:

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

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

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