iOS label和cell自適應高度

- (void)setLabelHeight:(UILabel *)label labelText:(NSString *)text font:(UIFont *)font {

NSMutableParagraphStyle *paraStyle = [[NSMutableParagraphStyle alloc] init];

paraStyle.lineBreakMode = NSLineBreakByCharWrapping;

paraStyle.alignment = NSTextAlignmentJustified;

NSDictionary *dic = @{NSFontAttributeName:font, NSParagraphStyleAttributeName:paraStyle, NSKernAttributeName:@0.0f};

NSAttributedString *attributeStr = [[NSAttributedString alloc] initWithString:text attributes:dic];

label.attributedText = attributeStr;

}

[self setLabelHeight:self.locationLab labelText:self.locationLab.text font:[UIFont systemFontOfSize:12]];

##### 需要自適應高度的label調用上邊這方法即可

//返回cell高度

+ (CGFloat)getCellHeightWithString:(NSString *)string {

CGFloat height = [ScanInfoCell initWithSize:CGSizeMake(SCREEN_WIDTH - 30 - 58, CGFLOAT_MAX) string:string font:12].height + 51;

if (!string) {

height += 14.5;

}

return height;

}

//字符串轉size

+ (CGSize)initWithSize:(CGSize)size string:(NSString *)string font:(NSInteger)font {

NSDictionary *attribute = @{NSFontAttributeName : [UIFont systemFontOfSize:font]};

CGSize sizes = [string boundingRectWithSize:size options:NSStringDrawingTruncatesLastVisibleLine | NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading attributes:attribute context:nil].size;

return sizes;

}

####在tableview代理方法中調用下邊方法即可達到效果

//返回cell高度

+ (CGFloat)getCellHeightWithString:(NSString *)string;

如下:

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {

//設置地址label自適應 cell高度隨label高度變化

ScanInfo *scan = self.viewModel.scanHistoryArr[indexPath.section];

return [ScanInfoCell getCellHeightWithString:scan.deviceLocation];

}

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

相關閱讀更多精彩內容

  • iOS開發(fā)系列--網絡開發(fā) 概覽 大部分應用程序都或多或少會牽扯到網絡開發(fā),例如說新浪微博、微信等,這些應用本身可...
    lichengjin閱讀 4,046評論 2 7
  • 文章出處: http://www.cocoachina.com/industry/20140604/8668.ht...
    whiteking閱讀 1,214評論 0 1
  • 1、禁止手機睡眠[UIApplication sharedApplication].idleTimerDisabl...
    DingGa閱讀 1,211評論 1 6
  • 關上門時,天已大黑。 鑰匙轉動,伴著刺耳的雷聲,紛至沓來的是一場憋了許久的夏雨。 想起白天里老師講試卷答題,暗暗較...
    清焰如風閱讀 285評論 8 3
  • 窗外的云朵很厚,很厚,就堆在身旁的另一側。一年后的北京仿佛藏著一絲陌生,就連云端的事物都給人一種隔離,像是路人。風...
    燕云傾閱讀 399評論 1 1

友情鏈接更多精彩內容