2013-02-13 7 views
2

일부 UITextView에 문제가 있습니다. 내 응용 프로그램에서 글꼴 크기를 변경할 수있는 옵션이 있으며, 글꼴 크기를 변경하면보기에 여러 글꼴이 있으므로 내용을 다시로드하고 textview의 크기를 조정합니다. 아래의 코드를 사용하여 크기를 조정할 수 있지만 때로는 올바른 높이를 반환합니다.하지만 응용 프로그램에서 텍스트 크기를 변경하면 길이가 줄고 잘못된 높이가 반환되고 textviews의 텍스트는 바닥. 누군가 나를 도울 수 있습니까?sizeWithFont : constrainedToSize : lineBreakMode : 글꼴 크기를 변경할 때 올바르게 작동하지 않습니다.

int height = [tempTextView.text sizeWithFont: 
[UIFont fontWithName:fontFamily size:fontSizeF] 
constrainedToSize:CGSizeMake(300, 10000) lineBreakMode: 
NSLineBreakByWordWrapping].height; 

답변

1

나는이 오래된 질문 & 늦게 답을 알고,하지만 여전히 아주 관련이,

이 이 sizeWithFont 방법은 현재 사용되지 않습니다

,이 새로운 방법은 최고의 그래서

NSString *content = **Whatever your label's content is expected to be** 
CGSize maximumLabelSize = CGSizeMake(390, 1000); 

NSDictionary *stringAttributes = [NSDictionary dictionaryWithObject:[UIFont systemFontOfSize:13] forKey: NSFontAttributeName]; 

CGSize newExpectedLabelSize = [content boundingRectWithSize:maximumLabelSize options:NSStringDrawingTruncatesLastVisibleLine|NSStringDrawingUsesLineFragmentOrigin attributes:stringAttributes context:nil].size; 

을 수행 할 수 있습니다 작동 라벨 (또는 표 셀 등)을

label.frame.size.height = newExpectedLabelSize.height; 

도움이 되네, 환호. 짐.

관련 문제