
	                	                 
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