Notice
Recent Posts
Recent Comments
Link
투케이2K
88. (Objective-C/objc) CGRectMake 사용해 UILabel 라벨 컴포넌트 동적 생성 위치 설정 및 addSubview 뷰 컨트롤러에 추가 본문
Objective-C
88. (Objective-C/objc) CGRectMake 사용해 UILabel 라벨 컴포넌트 동적 생성 위치 설정 및 addSubview 뷰 컨트롤러에 추가
투케이2K 2022. 9. 22. 11:18[개발 환경 설정]
개발 툴 : XCODE
개발 언어 : OBJECTIVE-C
[소스 코드]
// MARK: - [헤더 파일에 정의 없이 : void 메소드 구현]
- (void)testMain {
printf("\n");
printf("==================================== \n");
printf("[ViewController >> testMain() :: 테스트 메소드 수행] \n");
printf("==================================== \n");
printf("\n");
// [try catch 구문 정의 실시]
@try {
// [뷰 화면 사이즈 확인 실시]
double deviceHeight = self.view.frame.size.height;
double deviceWidth = self.view.frame.size.width;
// [디바이스 휴대폰 상태 바 높이 사이즈 확인 실시]
double statusBarFrameHeight = [UIApplication sharedApplication].statusBarFrame.size.height;
double statusBarFrameWidth = [UIApplication sharedApplication].statusBarFrame.size.width;
// [컴포넌트가 생성 될 사이즈 및 위치 값 지정]
double componentsHeight = 100.0;
double componentsWidth = 200.0;
double componentsX = (deviceWidth - componentsWidth) / 2; // [width 가운데 중앙]
double componentsY = (deviceHeight - statusBarFrameHeight - componentsHeight) / 2; // [height 가운데 중앙]
// [CGRect 사용해 컴포넌트가 생성 될 사이즈 및 위치 설정 실시]
CGRect cgRect = CGRectMake(
componentsX, // [x]
componentsY, // [y]
componentsWidth, // [width]
componentsHeight // [height]
);
// [컴포넌트 생성 실시]
UILabel *label = [[UILabel alloc] initWithFrame:cgRect];
// [컴포넌트 속성 설정 실시]
[label setText:@"투케이2K"];
[label setTextAlignment:NSTextAlignmentCenter];
[label setTextColor:UIColor.whiteColor];
[label setBackgroundColor:UIColor.blueColor];
// [뷰 컨트롤러에 추가]
[self.view addSubview:label];
// [로그 출력 실시]
printf("\n");
printf("==================================== \n");
printf("[ViewController >> try :: 로직 처리 결과 확인 실시] \n");
printf("[deviceHeight :: %f] \n", deviceHeight);
printf("[deviceWidth :: %f] \n", deviceWidth);
printf("[statusBarFrameHeight :: %f] \n", statusBarFrameHeight);
printf("[statusBarFrameWidth :: %f] \n", statusBarFrameWidth);
printf("==================================== \n");
printf("\n");
}
@catch (NSException *exception) {
printf("\n");
printf("==================================== \n");
printf("[ViewController >> catch :: 예외 상황 확인] \n");
printf("[name :: %s] \n", exception.name.description.UTF8String);
printf("[reason :: %s] \n", exception.reason.description.UTF8String);
printf("==================================== \n");
printf("\n");
}
}
[결과 출력]
반응형
'Objective-C' 카테고리의 다른 글
Comments