Bibi's DevLog ๐ค๐
[iOS] UINavigationController - viewControllers์ pushViewController(_:animated:) ๋ณธ๋ฌธ
๐ฑ๐ iOS/๐ Apple Developer Documentation
[iOS] UINavigationController - viewControllers์ pushViewController(_:animated:)
๋น๋น bibi 2022. 12. 12. 21:28navigationController.viewControllers
- ํ์ฌ navigation stack์ ์กด์ฌํ๋ VC๋ค์ ๋ํ๋ธ๋ค.
- rootVC๋ 0๋ฒ์งธ ์ธ๋ฑ์ค ์์
- ๋งจ ์์ ์์ธ VC๋ ๋งจ ๋ ์ธ๋ฑ์ค์ ์์ (index n-1)
- back view๋ index n-2
- ํด๋น ํ๋กํผํฐ์ ์ ๋ทฐ์ปจ ๋ฐฐ์ด์ ํ ๋นํ๋ ๊ฒ์,
setViewControllers(_:animated:)
๋ฅผ ํธ์ถํ๋ ๊ฒ๊ณผ ๊ฐ๋ค.
self.navigationController.viewControllers = [issueVC]
์ ๊ฐ์ด ํ ๋นํ๋ฉด, ๊ธฐ์กด์ ์กด์ฌํ๋ navigation stack์ ๋ฌด์ํ๊ณ ์ ๋ทฐ์ปจ์ ํ ๋น
- ๋ฐ๋ผ์ ๋ค์ ํ๋ฉด์ผ๋ก ๋์ด๊ฐ๋ back๋ฒํผ์ด ์กด์ฌํ์ง ์๋๋ค
- ์? ๊ธฐ์กด stack์ ์์ด์ผ๋ฏ๋ก ํ์ฌ ํ๋ฉด๋ฐ์ ์๋ ์ํ์ - ๋์๊ฐ ํ๋ฉด ์คํ์ด ์์
- ๊ทธ๋ฌ๋ฏ๋ก pushVC๋ฅผ ํตํด ํ๋ฉด์ ํ์ ํ๋ ๊ฒ์ด ๋ฐ๋์งํ๋ค
pushViewController(_:animated:)
navigation stack์ VC๋ฅผ ๋ฐ์ด๋ฃ๊ณ , ํ๋ฉด์ ๊ฐฑ์ ํ๋ค.
- viewController : ์คํ์ ๋ฃ์ VC. tab bar controller ๊ฐ์ฒด๋ ๋ฃ์ ์ ์๋ค. ํด๋น ๋ทฐ์ปจ์ด ์ด๋ฏธ navigation stack์ ์๋ค๋ฉด, ์์ธ๊ฐ ๋ฐ์ํ๋ค.
- ์ ๋ฌ๋ VC๋ navigation stack์ top view controller๊ฐ ๋๋ค.
- animated : ํ๋ฉด ์ ํ์ ์ ๋๋ฉ์ด์
ํจ๊ณผ๋ฅผ ๋ฃ์์ง ์๋ฃ์์ง ์ง์
- ์คํ ์์ ์ navigation controller๋ฅผ ์ค์ ํ๋ค๋ฉด false๋ก ์ง์ ํด์ผ ํ๋ค
- ํ๋ฉด์ ์ ํํ๋ฉด์ navigation bar์ tool bar๋ ๋ฐ๋ผ์ ๊ฐฑ์ ํด ์ค๋ค.
'๐ฑ๐ iOS > ๐ Apple Developer Documentation' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Array] contains(_:) + ์๊ฐ๋ณต์ก๋ ํ๊ตฌ (0) | 2023.01.26 |
---|---|
[Swift] Array ๋ฐฐ์ด : ๋ค์ง๊ธฐ - reversed() / ์๋ฆฌ๋ฐ๊พธ๊ธฐ swapAt(_:_:) (0) | 2023.01.19 |
[Swift] ArraySlice(SubSequence) - ๋ฐฐ์ด์ ๋ถ๋ถ ์ฐธ์กฐํ๊ธฐ (0) | 2022.12.06 |
[Swift] type(of:) (0) | 2022.09.28 |
[Swift / Array] swapAt(_:_:) (0) | 2022.09.28 |