web-dev-qa-db-fra.com

Comment entrer des caractères Unicode dans un UILabel dans Interface Builder?

Je voudrais afficher un caractère unicode (le symbole du haut-parleur U + 1F50A) dans l'étiquette. Est-il possible de saisir ce symbole dans Interface Builder?

53
ragnarius

Oui, vous pouvez cliquer sur "Modifier"> "Caractères spéciaux ..." - vous pouvez y trouver tous les caractères Unicode (y compris les emoji) et les copier/coller où vous définissez le texte de l'étiquette dans Interface Builder.

EDIT : Dans Xcode 6 c'est "Edit"> "Emoji & Characters"

Xcode 7+: "Modifier"> "Emoji et symboles"

99
graver

Pour ceux qui ont essayé de le faire par programme, mais qui ont échoué, utilisez simplement ceci:

label.text = @"\U0001F50A";
20
JohnVanDijk

Faites-le par programme.

Déclarez une IBOutlet pour le label, avec les moyens de type NSString:

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

myLabel.text = myString;

Jetez également un œil à la question this .

17
Phillip

Dans Xcode 8/Swift 3, le plus simple est d'utiliser l'échappement unicode:

let a = "\u{1F50A}"  
8
leinadsey

C'est amusant pourquoi peu de gens le savaient. Vous pouvez saisir des symboles Unicode directement en maintenant "Option" et en saisissant le chiffre hexadécimal. Tout ce dont vous avez besoin: (exemple Sierra), allez dans "Préférence -> Claviers -> Sources d'entrée" et recherchez "Unicode Hex". Il devrait apparaître dans la section "Autres". Ajoutez-le ensuite et vous pourrez entrer Unicode-char n'importe où en sélectionnant simplement cette source d'entrée.

Par exemple: ✓ = (Alt + 2713), € 20ac), etc. Section la plus intéressante de 2100 à 2800. Liste complète que vous pouvez trouver ici - --- (tableau Unicode

P.S .: Cette méthode n'est valable que pour les Unicodes à quatre chiffres

6
sVd