본문 바로가기
기술/iOS

xCode 4.2에서 sizeWithFont:constrainedToSize:lineBreakMode: 사용시 주의점.

by 프리지크 2012. 2. 20.
반응형

일단 해결책을 구할 수 있었던 곳의 url 링크를 먼저.
 참조 : http://firekokoma.tistory.com/151

UILabel 등에 텍스트를 동적으로 입력을 할 때 크기를 바꿔줘야하는 경우가 생깁니다.
동적으로 크기를 구하기 위해서 많이들 사용하시는게 아래 메소드입니다.

 - sizeWithFont:constrainedToSize:lineBreakMode:

 예를 들자면,
CFSize size = [ViewContents.text sizeWithFont:[UIFont boldSystemFontOfSize:15.0]
                                  constrainedToSize:CGSizeMake(250, 5000) lineBreakMode:UILineBreakModeWordWrap]
이렇게들 쓰지요.

xCode 4.2 에서 이 메소드를 쓰고 있었는데, distribution 이나 release 로 컴파일해서 넣으면
size.height, size.width가 제대로 안나오는 경우가 있더군요.
이런 현상이 발생 안할 수도 있습니다.
일단 해결책은 아래와 같이 Build settings에서 Ohter C Flags에 -mno-thumb 를 추가해주고 해결하였습니다. LLVM Compiler의 최적화 관련 문제로 예상한다는데...그 이상은...ㅎㅎ



==> 젠장...xCode 4.3에서는 이런 현상 발생 안함. ;;;
반응형