取代任何字母/数字

foe*_*ebe 3 iphone unicode xcode objective-c superscript

有没有办法上标任何数字?在我的应用程序中,我需要标注从0到24的数字.
我知道,\u2070例如我可以显示上标0,但在Unicode中,并不是我需要的所有数字.
我只想将NSString设置为带有指数的数字,如10 ^ 24.有没有办法做到这一点?

dre*_*lax 7

它们分散在整个Unicode块中:

  • \u2070 是上标0
  • \u00B9 是上标1
  • \u00B2 是上标2
  • \u00B3 是上标3
  • \u2074 是上标4
  • \u2075 是上标5
  • \u2076 是上标6
  • \u2077 是上标7
  • \u2078 是上标8
  • \u2079 是上标9

要完全放置它们并使其更容易选择数字,您可以使用wchar_t[]类型,也可以将它们存储在字符串中:

NSString *superDigits = @"\u2070\u00B9\u00B2\u00B3\u2074\u2075\u2076\u2077\u2078\u2079";
Run Code Online (Sandbox Code Playgroud)

作为练习,您可以创建一个将整数格式化为上标字符串的方法.

  • 请注意,在iOS中的大多数字体中,数字1,2和3看起来与其他字体不同.有关更多详细信息(以及一致的字体列表),请参阅此问题:http://stackoverflow.com/questions/7663251/why-the-display-of-unicode-characters-for-superscripted-digits-are-not -at-的-SA/7663610#7663610 (3认同)