BOLD箭头的Unicode符号在UILabel iOS 7中显示不正确的UI

时间:2014-06-12 11:09:31

标签: ios objective-c unicode

我正在使用unicode符号进行BOLD up&从此链接http://en.wikipedia.org/wiki/Miscellaneous_Symbols_and_Arrows

向下箭头

但它在箭头周围显示蓝框,如下面的截图

所示

enter image description here

我的代码如下

NSString *strMore = @"\u2B06" ;
NSString *strLess = @"\u2B07" ;

self.lblMore.text = strMore;
self.lblLess.text = strLess;

有人可以告诉我出了什么问题吗?

1 个答案:

答案 0 :(得分:4)

带有蓝色框的箭头是具有相同Unicode的Emoji箭头。在OS X上打开字符查看器(Control + Option + Space)以查找代码并从左窗格中检查Arrows部分的Unicode。使用该unicode应解决问题,因为它不会弄乱表情符号箭头代码!

更新抱歉,我目前无法访问Mac,因此无法自行查找代码。显然,如果你向你的unicode添加\U0000FE0E,那将避免使用表情符号。所以在你的情况下:

而不是:

NSString *strMore = @"\u2B06" ; //This will map the character to the Emoji icon; the blue up arrow.
NSString *strLess = @"\u2B07" ; //This will map the character to the Emoji icon; the blue down arrow.

写:

NSString *strMore = @"\u2B06\U0000FE0E" ; //This will disable Emoji character mapping and will display the proper unicode character, the black up arrow here.
NSString *strLess = @"\u2B07\U0000FE0E" ; //This will disable Emoji character mapping and will display the proper unicode character, the black down arrow here.

让我知道这是否有效!

第二次更新:

很高兴它有效!在确定它有效之前不想参考。显然,Apple的开发人员论坛中提到了付费开发人员。它也在this linkthis question中提及。