[iOS] UITextView, UILabel에 가변높이값 설정하기 iOS



http://gsstudio.egloos.com/4402261

boundingRectWithSize 함수를 사용하며 높이값 안맞는다고 짜증낸 적이 있다. 

세상에... 그냥 NSAttributeString을 사용해서 높이값을 구하면 그게 최고다.


1
2
3
4
5
6
7
8
9
10
11
12
13
NSString* string = @"가나다라마바사 동해물과 백두산이 별하나에 사랑과 별하나에 어머니";
 
NSMutableAttributedString* attr = [[NSMutableAttributedString alloc] initWithString:string];
 
[attr addAttribute:NSFontAttributeName value:[UIFont boldSystemFontOfSize:14.0] range:NSMakeRange(0, string.length)];
 
CGFloat width = [UIScreen mainScreen].bounds.size.width - 16;
 
CGRect rect = [attr boundingRectWithSize:CGSizeMake(width, MAXFLOAT) options:NSStringDrawingUsesFontLeading context:nil];
 
NSLog(@"height : %f", rect.size.height);
 
 
cs


cell에서 scrollview에서 string으로  가변 뷰의 높이 값 구할때, string과 fontsize 받는 함수로 만들어두면 끝.

이젠 좀 편하게 높이값 맞추겠다.




덧글

댓글 입력 영역


adsence 160x600