Как ввести символы Unicode в UILabel в построителе интерфейса?

Я хотел бы отобразить символ юникода (символ динамика U + 1F50A) в метке. Можно ли ввести этот символ в Interface Builder?

Ответ 1

Да, вы можете нажать EditSpecial Characters... - там вы можете найти все символы Unicode (включая emoji) и скопировать/вставить их там, где вы установили текст ярлыка в InterfaceBuilder.

ИЗМЕНИТЬ: Начиная с Xcode6 он Редактирование > Emoji и символы

Ответ 2

Для тех, кто пытался сделать это программно, но не удалось, просто используйте это:

label.text = @"\U0001F50A";

Ответ 3

Сделайте это программно.

Объявите IBOutlet для метки с помощью типа NSString:

// UTF-8 Hexadecimal Encoding
NSString *myString = [NSString stringWithUTF8String:"0xF09F948A"];

myLabel.text = myString;

Также рассмотрите этот вопрос.

Ответ 4

Это весело, почему мало кто знал об этом. Вы можете вводить символы Unicode непосредственно, удерживая "Option" и вводить шестую цифру. Все, что вам нужно: (пример Сьерры) goto "Preference → Keyboards → Input Sources" и поиск "Unicode Hex". Он должен появиться в разделе "Другие". Затем добавьте его, а затем вы сможете ввести Unicode- char в любом месте, просто выбрав этот источник ввода.

Например: ✓ = (Alt + 2713), € - (20ac) и т.д. Самый интересный раздел от 2100 до 2800. Полный список вы можете найти здесь - Таблица Unicode

P.S.: Этот метод можно использовать только для четырехзначных Unicodes

Ответ 5

В Xcode 8/Swift 3 проще всего использовать escape-код unicode:

let a = "\u{1F50A}"