액션 세그웨이: 트리거와 세그웨이가 직접 연결된 것
버튼 등이 출발점인 경우.
트리거 - 터치 또는 클릭 이벤트를 발생시켜 세그웨이를 실행할 수 있는 요소
해당 이벤트만 발생하면 자동으로 실행됨.
트리거의 터치에 의해 실행되므로 별도의 처리 코드가 전혀 필요 없다.
p230
매뉴얼 세그웨이 : 뷰 컨트롤러와 뷰 컨트롤러 사이에 연결되는 수동 실행 세그웨이
트리거 없이 수동으로 실행해야 하므로, 소스코드에서 세그웨이를 실행할 메소드를 호출해야 함.
매뉴얼 세그웨이를 실행하기 위한 메소드는 다음과 같다.
performSegue(withIdentifier: <세그웨이 식별자>, sender: <세그웨이 실행 객체>)
두 개의 인자값은 세그웨이가 여러 개일 경우를 대비한 세그웨이 식별자와 세그웨이를 실행하는 객체 정보.
p236
Unwind - 화면 복귀
세그웨이: 목적지가 되는 뷰 컨트롤러의 인스턴스를 자동으로 생성.
첫번째 뷰 컨트롤러에서 두번째 뷰 컨트롤러로 세그웨이를 연결하면 자동으로 인스턴스가 생성된다.
iOS에서 뷰컨트롤러의 인스턴스는 싱글톤 패턴이어야 함. 즉, 뷰 컨트롤러의 인스턴스는 하나 이상 존재해서는 안된다.
unwind: 화면 복귀용 메소드 사용
1)프레젠테이션 방식으로 이동했을 때 : dismiss(animated:)
2)내비게이션 컨트롤러를 이용하여 이동했을 때: popViewController(animated:)
3)스토리보드 뷰 컨트롤러의 상단 도크바의 세번째 아이콘 - exit 이용
p258
*커스텀 세그웨이
언제쓰는가?
화면 전환시 뷰 컨트롤러 전체를 전환하는 대신, 다른 컨트롤러에 있는 뷰만 읽어와 전환하는 세그웨이
이를 응용하면, 뷰 컨트롤러 하나에서 상태값에 따라 여러가지 다른 뷰를 다양하게 표현하는 일이 가능.
상태값별로 보여줄 뷰와 뷰 컨트롤러를 작성한 다음, 조건절로 구분하여 특정 조건일 때 읽어 들이는 뷰를 바꿔주면 된다.
출처: 꼼꼼한 재은씨의 swift 기본편
'iOS > iOS Swift 개발 일기' 카테고리의 다른 글
ios swift 전처리메소드 (Pre-process method) (0) | 2022.05.23 |
---|---|
ios swift NSLog (0) | 2022.05.23 |
[iOS swift] Embed In : 낙하산 (0) | 2022.05.21 |
Navigation controller 관련 (0) | 2022.05.21 |
ios swift 오토레이아웃 관련 (0) | 2022.05.20 |