objective c - Cómo mostrar Emoji en UILabel iOS
uitextfield swift 4 (5)
Tengo que mostrar el texto de la vista de texto sonriente en UILabel.
En la UILabel -
lbl.text = @"Happy to help you /U0001F431;
se está mostrando correctamente.
En UITextView
-
Intenté convertir el texto de UITextView
en una cadena y luego el registro es -
%F0%9F%99%88%F0%9F%99%89%F0%9F%99%8A
Cómo codificar lo que puedo mostrar en UILabel
, alguien, por favor, UILabel
.
Actualización de la solución Swift 3.0 dada por @Bhavesh Nayi
let data = txtMessage.text!.data(using: .nonLossyASCII)
let emojiString = String.init(data: data!, encoding: .utf8)
y enviarlo al servidor de chat como
let data = message.message.data(using: .utf8)
let emoji = String.init(data: data!, encoding: .nonLossyASCII)
y luego mostrar emoji a UILablel
En Xcode versión 7.2.1, puedes usar el siguiente método abreviado para mostrar los paneles de símbolos e insertar el emoji:
atajo: (presiona las tres teclas de abajo juntas)
Ctrl Command Space
Puede usar el método abreviado ⌃ ⌘ Space
para mostrar los paneles de símbolos y simplemente insertar el emoji que está buscando directamente sin Unicode:
lbl.text = @"Happy to help you 😺";
(simplemente copie el código de arriba a Xcode si su navegador no muestra el emoji)
En caso de veloz 2.3 o inferior
let textViewData : NSData = textViewString.dataUsingEncoding(NSNonLossyASCIIStringEncoding)!
let valueUniCode : String = String(data: textViewData, encoding: NSUTF8StringEncoding)!
let emojData : NSData = valueUniCode.dataUsingEncoding(NSUTF8StringEncoding)!
let emojString : String = String(data: emojData, encoding: NSNonLossyASCIIStringEncoding)!
En caso de Swift 3.0 o superior
let textViewData = textViewString.data(using: .nonLossyASCII)
let valueUniCode = String.init(data: textViewData!, encoding: .utf8)!
let emojData = valueUniCode.data(using: .utf8)
let emojString = String.init(data: emojData, encoding: .nonLossyASCII)
NSString *str = @"Happy to help you /U0001F431";
NSData *data = [str dataUsingEncoding:NSNonLossyASCIIStringEncoding];
NSString *valueUnicode = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSData *dataa = [valueUnicode dataUsingEncoding:NSUTF8StringEncoding];
NSString *valueEmoj = [[NSString alloc] initWithData:dataa encoding:NSNonLossyASCIIStringEncoding];
_lbl.text = valueEmoj;
SWIFT - 3 O MAYORES
let str = "Happy to help you /U0001F431"
let data : NSData = str.dataUsingEncoding(NSNonLossyASCIIStringEncoding)!
let valueUnicode : String = String(data: data, encoding: NSUTF8StringEncoding)!
let dataa : NSData = valueUniCode.dataUsingEncoding(NSUTF8StringEncoding)!
let valueEmoj : String = String(data: dataa, encoding: NSNonLossyASCIIStringEncoding)!
SWIFT - 4 O MAYOR
let str = "Happy to help you /U0001F431"
let data : NSData = str.dataUsingEncoding(NSNonLossyASCIIStringEncoding)!
let valueUnicode : String = String(data: data as Data, encoding: String.Encoding.utf8)!
let dataa : NSData = valueUnicode.data(using: String.Encoding.utf8)! as NSData
let valueEmoj : String = String(data: dataa as Data, encoding: String.Encoding.nonLossyASCII)!