小技巧,如何在Label中顯示圖片


這個需求其實是有的,比如QQ聊天界面里面發送的信息,可以用label來顯示文字(也可以用button顯示),但是有時候用戶可能會發送圖片。如果能讓Label遇到文字就顯示文字,遇到圖片就顯示圖片就好了。可能有的人會說用Quartz2D,直接在Label的drawinrect 里面用上下文畫上去。但這感覺太刻意去弄了,而且比較麻煩。

如果你不是在董鉑然博客園看到本文,請點擊查看原文

推薦一種用Label系統的屬性來做。

    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的屬性文本賦值。

 

賦值前和賦值后的對比(如果想做到大小隨自己定得話就需要增加判斷添加約束)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM