我目前使用如何在NSString包含表情符號時獲取NSString大小?
- (CGSize)sizeWithFont:(UIFont *)font constrainedToSize:(CGSize)size lineBreakMode:(UILineBreakMode)lineBreakMode
得到一個NSString的大小。但是,當該字符串包含表情符號時,它似乎會計算文字unicode字符的大小,而不會考慮表情符號本身的大小,從而導致返回的大小不正確。
如何正確獲取帶有表情字符的字符串的大小,因爲它會出現在uilabel中?
也許你可以給一個具體的(簡短的)字符串的例子,計算的大小和預期的大小。 –
我剛剛嘗試過混合使用不同的表情符和羅馬字符,不同的字體,並且尺寸始終是正確的......也許問題出在您的'constrainedToSize:'參數,這個參數太小而不能包含字符串.. – Guillaume
默認情況下,所有表情符號均以固定大小顯示,無論字體大小如何,NSString和UIFont都將完全忽略字體大小。我相信iOS上的表情符號字符總是以20px左右(非視網膜)繪製,所以它們將無法正確測量字符串的其餘部分。 –