Develop
2013.04.23 18:07

[ios] UILabel top alignㅎㅎ

Views 22840 Votes 0 Comment 0
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
나를 귀찮게 하는 아이폰의 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
No. Category Subject Author Date Views
713 Develop [node.js] 지금 하고 있는거.. file hooni 2013.04.23 26976
712 Develop [node.js] nodejs 기본 설치 hooni 2013.04.23 26252
711 Develop [mysql] 양력, 음력 DB데이터 file hooni 2013.04.23 7802
710 Develop [maven] Mac OS에 메이븐(maven) 설치하기 file hooni 2015.01.21 1104
709 Develop [matlab] 정보은닉 스테가노그래피(Steganography) 수업 file hooni 2016.10.03 678
708 Develop [matlab] ZigZag-Scanning (2-D Array) file hooni 2016.10.15 1980
707 Develop [linux] 프로세스 관련 시스템콜 hooni 2003.04.23 7827
706 Develop [linux] 임베디드 리눅스 (embedded linux) file hooni 2013.04.23 7354
705 Develop [linux] 쉘 스크립트를 이용한 BBS hooni 2003.04.23 10047
704 Develop [linux] 날짜나 파일의 내용으로 검색하는 방법(find 명령 사용) hooni 2013.04.23 8112
703 Develop [linux] tar 명령어 뽀개기.. ㅋㅋ hooni 2003.04.23 7669
702 Develop [linux] crond 사용법.. ㅋㅋ hooni 2013.04.23 7246
701 Develop [linux] CentOS Apache 웹서버에 HTTPS 적용 hooni 2015.10.23 783
700 Develop [lego] 세그웨이 이것만 볼것.. ㅎㅎ file hooni 2013.04.23 33536
699 Develop [kotlin] 코틀린 안드로이드 앱 버전/빌드 정보 hooni 2020.12.15 817
698 Develop [js]모바일 웹에서 orientationchange hooni 2013.04.23 19357
Board Pagination Prev 1 ... 7 8 9 10 11 ... 53 Next
/ 53