Develop
2013.04.23 18:07

[ios] UILabel top alignㅎㅎ

조회 수 22895 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
나를 귀찮게 하는 아이폰의 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
?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
745 Develop [ios] Facebook Cache 갱신하는 함수 file hooni 2017.02.27 1332
744 Develop [ios] UIWebView를 이용한 로컬 HTML 파일 표시 file hooni 2015.01.02 1350
743 Develop [js] 문자열에서 숫자만 걸러내기 (jQuery 안쓰고 정규표현식) hooni 2017.12.14 1360
742 Develop [ios] Facebook SDK 로그인 설명 file hooni 2017.04.19 1368
741 Develop 사이버보안실무 발표자료 (2017.06.08) file hooni 2017.06.05 1371
740 Develop [ios] APNS, Remote Push 사용자가 수신을 동의했는지 확인하기 hooni 2018.10.19 1377
739 Develop [ios] 동영상 플레이어 샘플 (for PIP Player) file hooni 2017.03.15 1416
738 Develop [ios] GPS 이용 상태 확인 hooni 2015.04.27 1422
737 Develop [android] How can I place app icon on launcher home screen? hooni 2016.11.15 1422
736 Develop [vim] vim 명령으로  문자 제거하기 (remove 65279 bomb) hooni 2021.02.03 1441
735 Develop [c] Mac OS 에 gmp(gmp.h) 라이브러리 설치 hooni 2016.10.03 1452
734 Develop [js] URL 파싱하기 (jQuery 안쓰고) hooni 2017.12.14 1456
733 Develop [php] 한글 문자열 자르기 (utf-8) hooni 2015.11.10 1468
732 Develop [ios] How to set up clang formatter hooni 2015.09.17 1478
731 Develop [android] 간단한 SQLIite 예제 hooni 2017.06.14 1478
730 Develop macOS에 node, npm 설치하기 (homebrew) file hooni 2021.11.06 1481
Board Pagination Prev 1 5 6 7 8 9 ... 53 Next
/ 53