iOS富文本設置、高度計算、混合字符(中英)串換行設置

像UILabel之類的顯示NSString的控件,其屬性都可以在NSMutableAttributedString中進行設置附參考鏈接:

http://blog.csdn.net/u013346305/article/details/50896308

http://blog.csdn.net/hdfqq188816190/article/details/50680385

在iOS7之后計算字符串高度的sizeWithFont方法已經(jīng)被boundingRectWithSize代替,增加了對富文本的相關設定。

在使用富文本時應注意中英混合的情況,該情況會使你的換行操作出現(xiàn)問題,因為很多編譯器默認會計算當“中文”+“英文”后如果寬度大于設定的控件寬度時,會將中文后的英文直接換到第二行顯示(即lineBreakMode的默認屬性為NSLineBreakByWordWrapping),在Xcode中的控制臺打印和coding的時候都會出現(xiàn)這個情況。

此時應該:label.lineBreakMode = NSLineBreakByCharWrapping;

如果此時你是即進行了富文本設定又對換行進行設定的話,記住先把換行操作的代碼放到label.attributedText = .......代碼之后,不然label.lineBreakMode = NSLineBreakByCharWrapping會失效。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容