Показывает emoji в UILabel? - программирование
Подтвердить что ты не робот

Показывает emoji в UILabel?

Не уверен, что мне здесь не хватает, и поиск не помог мне. Я хочу отображать символы emoji в UILabel, и это не делает это:

UILabel *label = [[UILabel alloc] init];
label.font = [UIFont fontWithName:@"AppleColorEmoji" size:16.0];
label.text = [NSString stringWithFormat:@"%C", 0x1F431];
// ... etc.

Прекрасно работает с другими небуквенными символами юникода, например. шахматных фигур, но не с любыми символами эможи, которые я пробовал.

4b9b3361

Ответ 1

Вероятно, вы не используете правильную кодировку для своих эмози-символов. Например, в вашем примере я думаю, что вы ищете что-то вроде этого:

label.text = [NSString stringWithFormat:@"%C", 0xe04f];

Посмотрите на эту таблицу, чтобы получить требуемые кодировки.

Ответ 2

Чтобы использовать Emoji, просто нажмите Control + command + space (^⌘Space). Нет необходимости использовать unicode для emoji.

Ответ 3

В xcode просто зайдите в верхнюю панель и нажмите EDIT > EMOJIS и SYMBOLS, и появится окно emoji, и вы сможете буквально добавить его в любой текст приложения, даже работает в построителе интерфейса, если вам нужно его добавить к тексту uilabel там.

enter image description here

enter image description here

Ответ 4

В Swift вы можете:

label.text = "🐈"

Обязательно укажите кавычки. В противном случае вы будете устанавливать текст на все, что находится в переменной. Следующее будет отображаться как "cat":

let 🐈 = "cat"
label.text = 🐈

Ответ 5

Также кодируются кодировки Unicode 6.1, но вам нужно будет указать их следующим образом:

label.text = @"\U0001F431";