Object-C에서 UILabel를 이용한 화면에 문자열 출력.

2009. 6. 11. 15:45프로그래밍/Object-C

728x90
반응형
화면에 문자열을 출력하는 소스입니다.
출처는 Apple Sample소스의 일부입니다.
http://developer.apple.com/iphone/library/samplecode/Touches/index.html
외의 다양한 샘플소스에서 확인하실수 있습니다.
한글도 정상적으로 출력됩니다.


.h 파일에 아래와 같은 줄들을 추가해줍니다.

UILabel *textLabel;
....

-(UILabel *) newLabelWithOffset:(float)offset numberOfLines:(NSUInteger) lines;
....

@property (nonatomic, retain) UILabel *textLabel;


.m 파일에 아래 부분을 추가해줍니다.
/*
 Allocates and initializes a label object.
 Sets characteristics to default values.
 */
-(UILabel *) newLabelWithOffset:(float)offset numberOfLines:(NSUInteger) lines
{
    float textHeight = 20.0;   
    UILabel *label =  [[UILabel alloc] initWithFrame:CGRectMake(self.frame.origin.x + 10.0, offset, self.frame.size.width - 20.0, textHeight * lines)];
    // Set the font size, text color, background color, and alignment.
    label.font = [UIFont systemFontOfSize:18.0];
    label.textColor = [UIColor lightTextColor];
    label.backgroundColor = [UIColor clearColor];
    label.textAlignment = UITextAlignmentCenter;
    // Set the number of lines
    label.numberOfLines = lines;
    if (lines > 1)
        // Set the linebreak mode if there is more than one line.
        label.lineBreakMode = UILineBreakModeWordWrap;
    // Initialize as an empty string
    label.text = @"";
    return label;
}

//실제로 화면에 그려주는 부분에 아래부분을 추가해준다.
    // Set up a text label to show the touch phase.
    // Create and inialize the label.
    textLabel = [self newLabelWithOffset:(self.frame.origin.y + 25) numberOfLines: 1];
    // Set the default text that shows on startup.
    textLabel.text = @"Text String. 테스트버전 입니다.";
    textLabel.opaque = NO;
    textLabel.backgroundColor = [UIColor blackColor];
    textLabel.textColor = [UIColor redColor];
    textLabel.font = [UIFont systemFontOfSize:12.0f];
    // Add the label as a subview.
    [self addSubview:textLabel];


728x90
반응형