小技巧,如何在Label中顯示圖片
阿新 • • 發佈:2017-05-25
技術 body win images att 上下文 判斷 lsp 約束
這個需求其實是有的,比如QQ聊天界面裏面發送的信息,可以用label來顯示文字(也可以用button顯示),但是有時候用戶可能會發送圖片。如果能讓Label遇到文字就顯示文字,遇到圖片就顯示圖片就好了。可能有的人會說用Quartz2D,直接在Label的drawinrect 裏面用上下文畫上去。但這感覺太刻意去弄了,而且比較麻煩。
如果你不是在董鉑然博客園看到本文,請點擊查看原文
推薦一種用Label系統的屬性來做。
1 2 3 4 5 6 7 8 9 10 |
UIImage *image = [UIImage imageNamed:@ "321.jpg" ];
// 1> 生成文本附件 NSTextAttachment *textAttach = [[ NSTextAttachment alloc] init];
textAttach.image = image;
// 2> 使用文本附件創建屬性文本
NSAttributedString *strA = [ NSAttributedString attributedStringWithAttachment:textAttach];
self .lblChat.attributedText = strA;
|
裏面的lblChat是一個成員變量 在storyboard裏拖得一個label。
所有人都知道label.Text 但應該不是全都知道label.attributedText
使用文本附件給label的屬性文本賦值。
賦值前和賦值後的對比(如果想做到大小隨自己定得話就需要增加判斷添加約束)
小技巧,如何在Label中顯示圖片