티스토리 뷰
VC1 →(modal)→ VC2 →(navigation)→ VC3
Navigation Controller로 연결된 여러 뷰에서 또 다른 뷰를 Modal 방식으로 띄우는 건 비교적 쉽지만, Modal로 띄운 뷰에서 Navigation 형태로 Push하는 건 약간의 수고를 요한다.
단순히 Modal 하나만을 띄울 땐 StoryBoard 상에서 Segue를 끌어와 identifier와 prepare 메서드를 이용하여 Modal Presentation을 구현했다면, 이번에는 VC1 속 버튼 자체에서 코드 작업이 필요하다.
Navigation 형식의 Push를 원한다면 해당 뷰 컨트롤러(VC2)가 Navigation Controller에 Embed in 되어있어야 한다. 따라서 Modal 형태로 VC2를 품고 있는 NavigationController를 띄운다.
// VC2를 코드 내에서 사용 가능하게 선언(StoryBoard 상에서 identifier 지정 필수)
guard let vc = storyboard?.instantiateViewController(identifier: "VC2") as? VC2 else { return }
// navigationController를 선언하고 rootView로 VC2를 할당
let navigationController = UINavigationController(rootViewController: vc)
// 화면 전환 커스텀, 필자는 PullScreen으로 띄우고, VC2에서 navigationBar가 보이지 않게 설정
navigationController.modalPresentationStyle = .fullScreen
navigationController.isNavigationBarHidden = true
// 해당 navigationController를 모달 형태로 present
present(navigationController, animated: true)
해당 작업을 마치면, VC2 에서 Navigation 형태의 Push를 구현할 수 있다.
아직 기본적인 화면 전환과 데이터 전달이 버겁다면, 해당 링크들을 참고하자.
Dev : Storyboard를 활용한 화면 전환 4가지 방법
* push는 navigation controller가 연결된 상태에서만 작동 * 1. segue로 push 전환 : 원래 화면에 있는 Button을 끌어다가 이동할 VC에 'Show'로 연결 뒤로가기 : 이동한 화면 속 Button에 해당 코드 작성 self.n..
dusanbaek.tistory.com
Dev : Storyboard, Protocol 및 Delegate를 활용한 화면 간 데이터 전달
Dev : Storyboard를 활용한 화면 전환 4가지 방법 * push는 navigation controller가 연결된 상태에서만 작동 * 1. segue로 push 전환 : 원래 화면에 있는 Button을 끌어다가 이동할 VC에 'Show'로 연결 뒤로가기..
dusanbaek.tistory.com
'Dev > iOS' 카테고리의 다른 글
Dev : AlertViewController에서 UITextField와 UIDatePicker 사용하기 (0) | 2022.11.07 |
---|---|
Dev : 앨범, 카메라 이미지 불러오기 & 저장하기 (0) | 2022.05.01 |
Tip : 프로퍼티(변수) 값 변경마다 특정 메서드를 실행해야 할 때 (0) | 2022.02.27 |
Tip : 같은 함수를 여러 프로퍼티에 적용하고 싶을 때 (0) | 2022.02.27 |
Dev : StoryBoard 없이 시작하기 (Xcode 13) (0) | 2022.01.27 |
- Total
- Today
- Yesterday
- PS
- CSV
- 파이썬
- c++
- DFS
- SVG
- 백트래킹
- how to start without storyboard
- swift
- xcode
- TIP
- HTML
- DP
- pyrebase
- D3
- Python
- BOJ
- how to remove border of tabbarcontroller
- 백준
- 정보시각화
- ios
- Javascript
- 자료구조
- 알고리즘
- Array
- 하노이탑이동순서
- 보라매사옥
- CSS
- 곱셈의 역원
- SceneDelegate
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |