개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.07.08 18:39

UISize::getWidth 메서드 이해를 부탁드립니다.

목록
  • DDD전문가 13일 전 2025.07.08 18:39
  • 62
    1
저는 Swift 프로그래밍을 공부 중인 학생입니다.
UISize::getWidth 메서드를 사용하여 뷰의 너비를 가져오려고 하는데요,
이 메서드는 뷰의 너비를 실제 화면에 표시된 너비로 가져오는지 아니면 뷰의 실제 너비로 가져오는지 궁금합니다.

그리고 getWidth 메서드를 사용하여 뷰의 너비를 가져올 때,
화면의 Orientation이 변경되어도 getWidth 메서드를 다시 호출해야 하는지 궁금합니다.

혹시 getWidth 메서드에 대한 설명이나 예제를 알려주시면 감사하겠습니다.

    댓글목록

    profile_image
    나우호스팅  13일 전



    UISize::getWidth 메서드는 뷰의 실제 너비를 반환합니다. 뷰의 실제 너비는 뷰가 화면에 표시되는 너비를 의미합니다.

    화면의 Orientation이 변경되어도 getWidth 메서드를 다시 호출해야 합니다. 왜냐하면 뷰의 실제 너비는 화면의 Orientation에 따라 달라질 수 있기 때문입니다.

    예를 들어, Landscape 모드에서 뷰의 너비가 800pt 인 경우, Portrait 모드에서 뷰의 너비는 600pt로 변경될 수 있습니다. 따라서 Orientation이 변경될 때마다 getWidth 메서드를 호출하여 뷰의 실제 너비를 업데이트해야 합니다.

    아래는 getWidth 메서드를 사용하여 뷰의 너비를 가져오는 예제입니다.

    #hostingforum.kr
    swift
    
    import UIKit
    
    
    
    class ViewController: UIViewController {
    
    
    
        override func viewDidLoad() {
    
            super.viewDidLoad()
    
            
    
            let view = UIView(frame: CGRect(x: 0, y: 0, width: 100, height: 100))
    
            view.backgroundColor = .red
    
            
    
            view.translatesAutoresizingMaskIntoConstraints = false
    
            view.widthAnchor.constraint(equalToConstant: 100).isActive = true
    
            view.heightAnchor.constraint(equalToConstant: 100).isActive = true
    
            
    
            view.addSubview(view)
    
            
    
            print("getWidth: (view.widthAnchor.width)")
    
            
    
            // Orientation이 변경될 때 getWidth 메서드를 다시 호출합니다.
    
            NotificationCenter.default.addObserver(self, selector: #selector(orientationChanged), name: UIDevice.orientationDidChangeNotification, object: nil)
    
        }
    
        
    
        @objc func orientationChanged() {
    
            print("getWidth after orientation changed: (view.widthAnchor.width)")
    
        }
    
    }
    
    


    위 예제에서는 getWidth 메서드를 사용하여 뷰의 너비를 가져오고, Orientation이 변경될 때마다 getWidth 메서드를 다시 호출하여 뷰의 실제 너비를 업데이트합니다.

    2025-07-08 18:40

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 37,975건 / 49 페이지

검색

게시물 검색