• 카테고리

    질문 & 답변
  • 세부 분야

    모바일 앱 개발

  • 해결 여부

    미해결

활용8, 오토레이아웃 설정에서 질문있어요

23.06.03 18:12 작성 조회수 200

0

안녕하세요, 엘런

저번에 코드로 넷플릭스 로그인 화면을 구성할 때는

UIView에 대한 오토레이아웃 설정을

override init(frame: CGRect) {
        super.init(frame: frame)
        
        setup()
        addViews()
        setConstraints()
    }
    
    required init?(coder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }

이렇게 해주었는데

이번 강의에서 언급된 updateConstraints() 메서드를 활용하지 않은 이유가 있을까요?? 넷플릭스 로그인 화면의 오토레이아웃 메서드인 setConstraints()만 updateConstraints()에 넣어주면 뷰를 띄우는 순서?에 관련한 오류가 나서요.

뷰 자체를 생성하는 것이라 drawing cycle을 제외하고 생각해도 돼서 그런건가?라는 생각이 들어서 질문드립니다.

답변 1

답변을 작성해보세요.

0

updateConstraints( )는

특정한 경우. 즉"뷰의 제약이 변하는 경우"(애니메이션이나 어떤 동작으로 인해 뷰가 변하는 경우)에만 오토레이아웃 등의 제약을 변경시켜주기 위한 목적으로 사용하는 것이예요.

일반적인 경우엔 뷰가 변하지 않으니까,
생성자에서 한번만 오토레이아웃을 잡아주면 됩니다...^^

감사합니다.