我在xcode中的應用程序具有一些產品數據的表格視圖。我的一個產品的名稱中有一個上標e。我怎麼可以使用標字符串中的字符,如:文字ê字符串中的上標字符IOS
我可以得到它與數字工作:文字\ u2070 - >文本或文字\ u2071 - >文本。但如何與其他角色做到這一點?
thx!
我在xcode中的應用程序具有一些產品數據的表格視圖。我的一個產品的名稱中有一個上標e。我怎麼可以使用標字符串中的字符,如:文字ê字符串中的上標字符IOS
我可以得到它與數字工作:文字\ u2070 - >文本或文字\ u2071 - >文本。但如何與其他角色做到這一點?
thx!
tl; dr:NSString不支持super/sub腳本的概念。這或多或少是一種UI格式問題。
一個可能的解決方案是將代碼中的UILabels添加到代碼中而不是接口構建器中。您可以添加更小字體的第二個UILabel。
Thx的信息!字體較小的UILabel看起來是最好的方法。 – Daniel
添加CoreText框架,導入CoreText.h,並使用UIlabel.attributedText - 它完全支持NSAttributedString。已經在SO上反覆提問和回答。
對於SubScript,使用kCTSuperscriptAttributeName的值作爲@ -1。
作爲每文檔
@discussion值必須是CFNumberRef。缺省值爲int值0.如果指定字體支持 ,則值爲1將啓用上標 ,值爲-1將啓用下標。
extern const CFStringRef kCTSuperscriptAttributeName CT_AVAILABLE(10_5,3_2);
Example- [lblHeader setText:@「Headers [Alpha1 – text」];
NSMutableAttributedString *headerSubscript = [[NSMutableAttributedString alloc]initWithAttributedString: lblHeader.attributedText];
[headerSubscript addAttribute:(NSString *)kCTSuperscriptAttributeName value:@-1 range:NSMakeRange(14,1)];
[lblHeader setAttributedText:headerSubscript];
也許這將幫助:http://stackoverflow.com/questions/5080175/how-to-create-subscript-characters-thats-not-in-unicode-in-ios – Jason
使用鏈接@JasonWang給了你。我們遇到了完全相同的問題,並且我們喜歡它在那裏使用webview和html。沒有其他解決方案 – BBog
它有一些很好的信息,但我不能在桌面視圖中使用像webview的東西。是唯一的方法來做到這一點與圖像? – Daniel