본문 바로가기
iOS/이슈

[iOS Issue] viewDidLoad에서 frame이 초기화 되지 않는 현상

by Sky Titan 2021. 5. 1.
728x90
	override func viewDidLoad() {
        super.viewDidLoad()
        
        innerView.frame.origin.y = points[0]
    }

다음과 같은 코드를 viewDidLoad에 넣어서 innerView의 위치를 초기화 하려고 했지만 제대로 동작하지 않았다. 때문에 viewDidAppear에 해당 코드를 넣으니 제대로 동작했다.

 

 

 

wrong frame size in viewDidLoad

Possible Duplicate: Why am I having to manually set my view’s frame in viewDidLoad? I have universal app for iphone and ipad, two storyboards, if I run my app on the iphone simulator in viewDi...

stackoverflow.com

 스택 오버플로우의 내용을 요약해보자면 view의 geometry 관련 속성들은 viewDidLoad에선 설정이 되지 않기에 viewWillAppear나 viewDidAppear에서 사용하는 것이 바람직하다는 내용이다.

728x90

댓글