Как включить смайлики в Swift string?

здесь довольно хорошая статья, которая ссылается на смайлики iOS и их код. Например ue008 для небольшой камеры.

я попробовал это в своем коде:

var myText: String = "ue008"

это не принимается xCode. Как его включить ?

6 ответов


Это из документации swift:

let dollarSign = "\u{24}"        // $,  Unicode scalar U+0024
let blackHeart = "\u{2665}"      // ♥,  Unicode scalar U+2665
let sparklingHeart = "\u{1F496}" // , Unicode scalar U+1F496

Если я понимаю, чего вы пытаетесь достичь, то:

нажмите "ctrl + cmd + пробел " в то время как в XCode. Пример использования смайлика "сердца"

cell.textLabel?.text = "❤️" + " \(liker) liked \(userBeingliked)'s photo"

вам вообще не нужны константы unicode. Просто используйте средство просмотра символов и введите символ напрямую.

let sparklingHeart = ""

вы можете вставить emoji напрямую, используя ⌘ ^ Space.

или, основываясь на ответе Грега:

var myText: String = "\u{e008}"

1 декодирование Юникода:

extension String {
    var decodeEmoji: String{
        let data = self.data(using: String.Encoding.utf8);
        let decodedStr = NSString(data: data!, encoding: String.Encoding.nonLossyASCII.rawValue)
        if let str = decodedStr{
            return str as String
        }
        return self
    }
}

использование

let decodedString = yourString.decodeEmoji

2 кодировка Юникода:

extension String {
    var encodeEmoji: String{
        if let encodeStr = NSString(cString: self.cString(using: .nonLossyASCII)!, encoding: String.Encoding.utf8.rawValue){
            return encodeStr as String
        }
        return self
    }
}

использование

let encodedString = yourString.encodeEmoji

Как Грег опубликовал выше, вы можете напрямую ввести emoji в Swift, используя средство просмотра символов OSx. Средство просмотра символов по умолчанию отключено. Вот как его включить:

на Системные настройки > язык и регион > настройки клавиатуры > клавиатура затем проверить показать клавиатуру, смайлики и символы зрителей в строке меню. После проверки вы можете открыть средство просмотра символов в верхней правой строке меню рядом с вашими значками Wifi и даты/времени.