티스토리 뷰

Mobile/iOS

[iOS][Objective-C] Label 높이 구하기

out of coding 2016. 12. 17. 22:59

AutoLayout을 사용하면서, 정확한 높이를 알 필요가 없어지긴 하였는데.

간혹 작업을 하다보면 안 맞는 부분들이 발생하게 된다.


이러할 경우에, 높이 계산해서 처리해 주어야 한다.


label.text = @"엄청나게 길다"


CGSize constraint = CGSizeMake(label.frame.size.width, CGFLOAT_MAX);

CGSize size;


NSStringDrawingContext *context = [[NSStringDrawingContext alloc] init];

CGSize boundingBox = [label.text boundingRectWithSize:constraint

   options:NSStringDrawingUsesLineFragmentOrigin

      attributes:@{NSFontAttributeName:label.font}

     context:context].size;


size = CGSizeMake(ceil(boundingBox.width), ceil(boundingBox.height));


self.constraintContentHeight.constant = size.height;


한글의 특성인것인지... 잘 안될때가 있는데... 희한함.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함