У меня возникла проблема с отображением emoji в UILabel. Я получаю данные из веб-службы (я не могу изменить способ я получить данные): Это значение из отладчика:UILabel не показывает emoji
__NSCFString * @"emoji \\ud83d\\ude1b\\ud83d\\ude1d" 0x000000017405ea80
Значение от NSLog:
emoji \ud83d\ude1b\ud83d\ude1d
если я назначить это значение моего UILabel текстового свойства я получаю на экране:
emoji \ud83d\ude1b\ud83d\ude1d
я пытался кодировать и декодировать строку с помощью:
NSData *data = [string dataUsingEncoding:NSNonLossyASCIIStringEncoding];
NSString *dataValue = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
return dataValue;
и когда я пытаюсь:
NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding];
NSString *output = [[NSString alloc] initWithData:data encoding:NSNonLossyASCIIStringEncoding];
я получить смайлик на экране, но если строка не имеет смайлик внутри него будет ноль и получить пустой ярлык на устройстве.
Я не могу заставить его работать правильно.
Спасибо за любую помощь.
Спасибо человеку, но почему, когда нет эможи, нить нить? –
@MikeMorris, это не ноль для меня .. я не знаю, что вызывает это в вашем случае, пытаясь взглянуть на это [обсуждение] (http://stackoverflow.com/questions/19304535/nsstring-with-emoticons-emojis- url-encode) может быть связано с вашей проблемой .. но я не думаю, что ваша строка не ascii .. хм .. я верю, что ваша проблема другая .. – 0yeoj
Спасибо, человек. ты помог мне. Мир тебе. –