[10秒學會] - iOS NSAttributedString 首行縮進

應用場景圖片:php


場景1      場景2   不少時候....網絡


 


這裏分3種作法:
1: http://my.oschina.net/zhaodacai/blog/652066
iOS UILabel顯示網絡圖片 NSMutableAttributedString使用網絡圖片 能夠參考的我另外一篇文章

優勢是 1個控件搞定 有興趣本身看

2:今天提供簡單方式首行縮進  由於剛剛我遇到了個坑  就是超出的沒有 "..." NSLineBreakByTruncatingTail  失效

3:第三種可牛逼了 前方高能警告    
番外篇//忽然想到  激動的心 顫抖的手(十八哥 偉大的詩人 偉大的農場主 我內心最優秀的php教育機構 感謝十八哥)
  self.labelTitle.text = [NSString stringWithFormat:@"%@%@",@"      ",homeListContentModel.name]; //腦補一下吧  屌不屌  牛不牛 大天窗有木有

好吧直接上代碼 很簡單   //放在你的NSMutableAttributedString +category裏面吧spa

 

+ (NSAttributedString *)lineHeadIndent:(CGFloat )indent lineSpacing:(CGFloat)lineSpacing string:(NSString *)str {
    NSMutableAttributedString *attributedString = [[ NSMutableAttributedString alloc ] initWithString :str];
    NSMutableParagraphStyle *paragraphStyle = [[ NSMutableParagraphStyle alloc ] init ];
    paragraphStyle. alignment = NSTextAlignmentLeft ;
    paragraphStyle.lineBreakMode = NSLineBreakByTruncatingTail; //這個就是個坑 我找了半天 -_-!!!
    //paragraphStyle. maximumLineHeight = 60 ;  //最大的行高
    paragraphStyle.lineSpacing = lineSpacing ;  //行自定義行高度
    [paragraphStyle setFirstLineHeadIndent : indent ];
    [attributedString addAttribute : NSParagraphStyleAttributeName value :paragraphStyle range : NSMakeRange ( 0 ,str.length)];
    return attributedString;
}
相關文章
相關標籤/搜索