Develop
2013.04.23 18:07
[ios] UILabel top alignㅎㅎ
조회 수 22894 댓글 0
나를 귀찮게 하는 아이폰의 api 부재
레이블에 대해서 문자의 가로정렬은 쉽게 되지만, 세로정렬은 sdk 의 속성을
눈 씻고 찾아봐도 찾을 수 없어 구걸신에게 또 구걸하여 아래와 같은 코드를 얻었다.
개념은 NSString의 sizeWithFont 메소드를 사용하여 실제로 그려질 크기를 손쉽게 구한 후에
이 값을 UILabel의 frame에 대입해주는 것이다.
아래 예제는 top 정렬 뿐 아니라 bottom 정렬도 가능한 예제이다.
- (void)setUILabel:(UILabel *)myLabel withMaxFrame:(CGRect)maxFrame withText:(NSString *)theText usingVerticalAlign:(int)vertAlign { CGSize stringSize = [theText sizeWithFont:myLabel.font constrainedToSize:maxFrame.size lineBreakMode:myLabel.lineBreakMode]; switch (vertAlign) { case 0: // vertical align = top myLabel.frame = CGRectMake(myLabel.frame.origin.x, myLabel.frame.origin.y, myLabel.frame.size.width, stringSize.height); break; case 1: // vertical align = middle // don't do anything, // lines will be placed in vertical middle by default break; case 2: // vertical align = bottom myLabel.frame = CGRectMake(myLabel.frame.origin.x, (myLabel.frame.origin.y + myLabel.frame.size.height) - stringSize.height, myLabel.frame.size.width, stringSize.height); break; } myLabel.text = theText; }
참조: http://discussions.apple.com/thread.jspa?messageID=8322622
-
이클립스(Eclipse) 유용한 단축키 ㅋㅋ
-
[doc] Json Framework 설치와 사용
-
[ajax] 크로스 도메인(Cross Domain) 이슈 해결 방안
-
컴파일러 수업 자료(교재 : 컴파일러 입문)
-
[iphone] 화면 전환 Portrait & Landscape Mode
-
[mac] 맥(OSX)에서 root 패스워드 설정하기
-
[vb] 문자열에서 태그 제거함수 (Visual Basic)
-
영어공부에 도움될만한 사이트 모음
-
Polynomial time 이란? ㅋㅋ
-
밸런싱 로봇.. 최종.. (관련 논문도 첨부) ㅋㅋ
-
[doc] 정보보호이론 강의자료 (중앙대꺼..)
-
[ios] UILabel top alignㅎㅎ