-
Swift 화면 전환 방법Programming/Swift(iOS) 2021. 9. 7. 11:42728x90
아이폰 화면 구성
- StackView로 쌓아올리는 방법
- Push로 현재 ViewController위에 새로운 화면을 쌓고
- Pop으로 현재 ViewController를 없애, 이전 화면으로 돌아간다.
화면 전환 방법
- 소스코드를 통해서 전환하는 방식
- StoryBoard를 통해 전환하는 방식
ViewController의 View위에 다른 View를 가져와 바꿔치기
ViewController에서 새로운 ViewController 호출하기
NavigationController를 이용하여 화면전환
SegueWay를 사용하여 화면 전환
예제 1 - 소스코드상에서 present와 dismiss 이용
mainViewController에서 secondViewController를 호출하는 경우
secondViewController의Identity의 StoryboardID를 꼭 넣어줘야한다.
이 경우에는 NavigationBar가 자동으로 나오지 않는다.
그리고 mainViewController에서 아래와 같이 호출 해준다.
@IBAction func tapCodePushButton(_ sender: Any) { guard let viewController = self.storyboard?.instantiateViewController(identifier: "secondViewController") as? secondViewController else { return } self.navigationController?.pushViewController(viewController, animated: true) }
secondViewController에서 해당 ViewController를 종료하고 싶으면 dismiss 이용
@IBAction func tapBackButton(_ sender: Any) { self.navigationController?.popViewController(animated: true) }
예제 2 - 소스코드상에서 push와 pop 이용
예제1번과 다르게 Navigation을 사용하는 것이므로, backButton이 자동으로 나온다.
@IBAction func tapCodePushButton(_ sender: Any) { guard let viewController = self.storyboard?.instantiateViewController(identifier: "secondViewController") as? secondViewController else { return } self.navigationController?.pushViewController(viewController, animated: true) }
@IBAction func tapBackButton(_ sender: Any) { self.navigationController?.popViewController(animated: true) }
예제 3 - segue로 push하기
storyboard에서 drag를 하여 대상이 되는 ViewController에 끌어다 놓으면 된다.
그리고 종류를 show로 해주면 된다.
예제 3 - segue로 present하기
storyboard에서 drag를 하여 대상이 되는 ViewController에 끌어다 놓으면 된다.
그리고 종류를 Present Modally로 해주면 된다. 그리고 presentation 옵션을 여러가지로 지정할 수도 있다.
'Programming > Swift(iOS)' 카테고리의 다른 글
[iOS교육] XCode가 생성한 파일 삭제 방법 (0) 2023.05.04 Swift 화면간 데이터 전달 (0) 2021.09.07 mac os에서 시스템 키체인을 사용하고자 합니다. (0) 2021.06.10 Swift Generic - 3 (0) 2021.04.06 Swift Generic - 2 (0) 2021.04.06