私は次のように NSNumber にまとめられた Unicode 文字の束を持っています:
@(0x1f4de), // EntypoIconTypePhone
@(0x1f4f1), // EntypoIconTypeMobile
@(0xe789), // EntypoIconTypeMouse
@(0xe723), // EntypoIconTypeAddress
@(0x2709), // EntypoIconTypeMail
@(0x1f53f), // EntypoIconTypePaperPlane
@(0x270e), // EntypoIconTypePencil
これらは Entypo フォントのアイコンです (強くお勧めします)。
これは、ユニコードから NSString を作成するために使用しているコードです。
NSNumber *u = self.unicodeLookup[type];
int unicode = [u intValue];
UniChar chars[] = {unicode};
NSString *string = [[NSString alloc] initWithCharacters:chars length:sizeof(chars) / sizeof(UniChar)];
私が見つけたのは、これらのアイコンの一部は期待どおりに作成されていますが、すべてではありません。そして、私が見ることができるのは、適切に作成されていない5桁のUnicodeです。
たとえば、これらの作品:
@(0xe723), // EntypoIconTypeAddress
@(0x2709), // EntypoIconTypeMail
しかし、これらはしません:
@(0x1f4de), // EntypoIconTypePhone
@(0x1f4f1), // EntypoIconTypeMobile
これが私の変換コードだと確信しています。私は、このエンコーディングの悪意をすべて理解していません。