투케이2K

307. (ios/swift) CGPoint, CGSize, CGRect 구분 차이점 및 예제 소스 코드 작성 본문

IOS

307. (ios/swift) CGPoint, CGSize, CGRect 구분 차이점 및 예제 소스 코드 작성

투케이2K 2022. 11. 20. 19:55

[개발 환경 설정]

개발 툴 : XCODE

개발 언어 : SWIFT

 

[차이점 설명]

1. CGPoint : (x, y) 위치를 설정합니다

2. CGSize : (width, height) 사이즈를 설정합니다

3. CGRect : (x, y, width, height) 위치 와 사이즈를 설정합니다

 

[소스 코드]

 

    // MARK: - [테스트 메인 함수 정의 실시]
    func testMain() {
        print("")
        print("====================================")
        print("[\(self.ACTIVITY_NAME) >> testMain() :: 테스트 함수 시작 실시]")
        print("====================================")
        print("")
        
        /*
         ------------------------------------
         [요약 설명]
         ------------------------------------
         1. view.frame.size : 디바이스 화면 사이즈를 확인합니다
         ------------------------------------
         2. UIApplication.shared.statusBarFrame : 디바이스 상태바 사이즈를 확인합니다
         ------------------------------------
         3. CGRect : 범위 좌표 및 크기를 설정할 수 있습니다
         ------------------------------------
         */
        
        
        // [뷰 화면 사이즈 확인 실시]
        let deviceHeight = self.view.frame.size.height
        let deviceWidth = self.view.frame.size.width
        
        
        // [디바이스 휴대폰 상태 바 높이 사이즈 확인 실시]
        let statusBarFrameHeight = UIApplication.shared.statusBarFrame.height
        let statusBarFrameWidth = UIApplication.shared.statusBarFrame.width

        
        // [CGRect 크기 및 위치 설정 실시]
        let cgRect = CGRect.init(
            x:0, // [x]
            y:statusBarFrameHeight, // [y]
            width:deviceWidth, // [width]
            height:deviceHeight - statusBarFrameHeight // [height]
        )
        
        
        // [라벨 생성 실시]
        let label = UILabel(frame: cgRect) // [위치 및 크키 설정]
        label.backgroundColor = UIColor.blue // [배경 색상]
        label.textAlignment = .center // [텍스트 정렬]
        label.text = "투케이2K" // [텍스트 설정]
        label.textColor = UIColor.white // [텍스트 색상]
        label.font = UIFont.systemFont(ofSize: CGFloat(50)) // [폰트 사이즈]
        
        
        // [addSubview 추가 실시]
        self.view.addSubview(label)
        
    }

 


 

반응형
Comments