- 버튼, 테이블 뷰, 컬렉션 뷰를 segue로 연결할 경우 자동으로 scene 이동을 처리 가능하다.
- 그 외의 뷰를 segue로 연결한다면, identifier을 정의하고 직접 코드로 실행 시점에 작성해주어야 한다.
코드로 Segue 실행하기
1. identifier 정의
Segue 이벤트 처리
prepare
- segue와 destination vc가 생성되고 나서 화면이 전환되기 직전 호출됨
segue
: segue와 관련된 vc의 정보가 저장되어 있음.
sender
: segue를 실행시킨 객체가 저장되어 있음.
- 기본 구현에서는 아무런 동작을 하지 않기 때문에, 상위 구현을 작성하지 않아도 된다.
UIStoryboardSegue
3가지 속성을 주로 사용한다.
source
: source vc, segue trigger가 보통 여기 포함되어 있다.
destination
: destination vc
identifier
: 실행중인 segue
Segue 실행 제어
- segue를 실행시킬지 말지 제어하는 메소드
- segue trigger에서 이벤트가 호출된 직후 실행
identifier
와 sender
을 참고해서 결정할 수 있다.
identifier
에 따라 작동하도록 하지 않으면 해당 vc에 있는 모든 segue에 영향을 준다.
true
면 segue가 실행되고 false
면 실행되지 않는다.
- 코드로 실행하는 segue에는 영향을 주지 않는다. 즉, 실행되지 않는다.
- performSegue 자체를 실행하는 부분에 조건을 추가해서 제어해야 한다.