Develop
2013.04.23 18:07
[ios] UILabel top alignㅎㅎ
조회 수 22895 댓글 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
-
[c] 가변인자 함수(printf와 같은..)
-
[linux] 한글 URL 인식할 수 있게 아파치(Apache) 설정 (mod_url.c 설치)
-
[c] openssl 샘플코드.. 어려움 ㅠㅠ
-
[c] 바로 보고 정리할 것.. ㅋㄷㅋㄷ
-
[c] UTF-8을 EUC-KR로 변환.. (iconv)
-
[c] 도메인(호스트)으로 IP정보 알아오기.. (nslookup과 비슷)
-
[c] 파이프(popen)로 다른 프로세스 실행결과 가져오기
-
[c++] Win32 API 기본 출력인 MessageBox() 함수 사용 예제..
-
[c++] mfc에서 윈도우 항상 위 속성 주기..
-
[c] 쓰레드에 대한 내용 퍼오기..ㅡㅡ;
-
[c++] 채팅로봇 소스.. ㅋㄷㅋㄷ
-
[doc] 인공지능 관련 자료(채팅로봇도 포함..)