Develop
2013.04.23 18:07
[ios] UILabel top alignㅎㅎ
조회 수 22842 댓글 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
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
1173 | System/OS | 해커스랩 깨기.. 후후.. ㅋㅋ | hooni | 2013.04.23 | 18419 |
1172 | Etc | 플라스터(Plaster) 수업 내용 | hooni | 2016.05.24 | 0 |
1171 | Develop | 프로그램 문서 관리 (Doxygen) | hooni | 2013.04.23 | 16391 |
1170 | Develop | 프로그래밍에서 foo, bar 함수의 유래 | hooni | 2013.06.25 | 21265 |
1169 | Develop | 프로그래밍 소스 관련 사이트.. | hooni | 2013.04.23 | 16486 |
1168 | Develop | 페이팔에서 돈 찾기 (Paypal withdraw) | hooni | 2014.02.20 | 11387 |
1167 | Etc | 티스토리 테이블 html,css 구문 | hooni | 2013.11.03 | 15965 |
1166 | System/OS | 콘솔에서 패스워드 걸린 zip 압축하는 명령 | hooni | 2018.03.02 | 952 |
1165 | System/OS | 컴파일러 수업 자료(교재 : 컴파일러 입문) | hooni | 2003.04.23 | 21970 |
1164 | Develop | 캘리포니아 운전면허 족보 | hooni | 2017.06.12 | 744 |
1163 | Etc | 캘리포니아 운전면허 문제 | hooni | 2017.07.22 | 984 |
1162 | Develop | 최근 논문 자료 (2011/01/03, 만현형한테 보낸거..) | hooni | 2013.04.23 | 10366 |