Develop
2013.04.23 18:07

[ios] UILabel top alignㅎㅎ

조회 수 22842 추천 수 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
번호 분류 제목 글쓴이 날짜 조회 수
121 Develop [android] AlertDialog 메시지 창 띄우기 hooni 2015.07.09 852
120 Develop [android] 코드에서 문자열로 Resource 가져오기 hooni 2015.07.09 3948
119 Develop [android] N-Puzzle 게임 file hooni 2015.07.09 871
118 Develop [ios] WWDC 2015 샘플 소스 코드 통합파일 hooni 2015.07.20 665
117 Develop [ios] NSData to NSString (NSString to NSData) hooni 2015.07.21 640
116 Develop [ios] AES256 알고리즘을 이용해 데이터 암호화/복호화 방법 file hooni 2015.07.21 4107
115 Develop [ios] Objective-C Types & Storage Capacity hooni 2015.07.22 1159
114 Develop [ios] 오브젝티브C→스위프트, 코드 변환 손쉽게 file hooni 2015.08.07 963
113 Develop [git] 쉬운 버전관리 Git 설명 hooni 2015.08.18 878
112 Develop [ios] SBCampanion App 초안 file hooni 2015.09.16 660
111 Develop [ios] How to set up clang formatter hooni 2015.09.17 1364
110 Develop DDay Memo 1.9.4 소스코드 secret hooni 2015.10.03 0
109 Develop [ios] 최상위 ViewController 가져오기 hooni 2015.10.12 1067
108 Develop [ios] 상위 ViewController 가져오기 hooni 2015.10.12 960
107 Develop [c] 기막힌 정렬 코드 ㅋㄷ file hooni 2015.10.13 814
106 Develop [linux] CentOS Apache 웹서버에 HTTPS 적용 hooni 2015.10.23 790
Board Pagination Prev 1 ... 44 45 46 47 48 ... 53 Next
/ 53