5.1 화면 전환 과정에서의 값 전달 방식

직접 전달 방식(동기 방식)

영속적으로 값을 저장할 필요가 없는 화면 전환, 화면이 전환되었을 때는 이미 데이터가 함께 전달이 되어있음.

값을 전달받는 쪽의 뷰 컨트로러가 전달받을 값의 명세를 모두 파악하고 이를 대입할 변수를 미리 생성해 두어야 한다는 단점이 있음

간접 전달 방식(비동기 방식)

저장소를 이용하는 방식은 지속적으로 값을 저장할 필요가 있는 화면 전환에서 필요

Ex) 뷰 컨트롤러를 이동할 때 마다 로그인 해야하는 불편함

보내는 쪽과 받는 쪽 모두 저장소의 위치를 사전에 공유하고 있어야 한다는 부담.


저는 앞서 말했던 뮤비에 가사를 추가하고 싶은데, 그걸 새 뷰 컨트롤러에서 컨트롤 하게 하고싶습니다.

그리고 1번 view 컨트롤러에서 버튼을 눌러서 배경이 바뀌게 설정하려고 합니다.

새 뷰 컨트롤러가 할 일은 해당 뷰 컨트롤러에서 이전 뷰 컨트롤러의 가사창이 띄워졌는지의 유무를 체크한 후 UISwitch를 설정하는 부분을 만들어 줄 예정입니다.