๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐ŸŽ iOS/UI

[iOS] ์ฒ˜์Œ ํ™”๋ฉด ๋ทฐ์ปจํŠธ๋กค๋Ÿฌ๋กœ ์„ค์ •ํ•˜๊ธฐ(Set InstantiateViewController)

by Fomagran ๐Ÿ’ป 2020. 1. 4.
728x90
๋ฐ˜์‘ํ˜•

์•ฑ ์‹คํ–‰ ์‹œ ์ฒ˜์Œ ํ™”๋ฉด์„ ์›ํ•˜๋Š” ๋ทฐ์ปจํŠธ๋กค๋Ÿฌ๋กœ ๋„์šฐ๊ณ  ์‹ถ์„ ๋•Œ๊ฐ€ ์žˆ๋‹ค. ์•„๋ž˜์™€ ๊ฐ™์€ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์›ํ•˜๋Š” ๋ทฐ์ปจํŠธ๋กค๋Ÿฌ๋กœ ์‹œ์ž‘ํ™”๋ฉด์„ ๋„์šธ ์ˆ˜ ์žˆ๋‹ค.

class AppDelegate: UIResponder, UIApplicationDelegate {
    
    var window: UIWindow?
    
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
               var initialViewController: UIViewController?
               let mainStoryboard : UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
               initialViewController = mainStoryboard.instantiateViewController(withIdentifier: "Arrive")
               self.window = UIWindow(frame: UIScreen.main.bounds)
               self.window?.rootViewController = initialViewController
               self.window?.makeKeyAndVisible()
        return true
   }

๋ณ€์ˆ˜ window๋ฅผ ๊ผญ ๋งŒ๋“ค์–ด์ค˜์•ผ ํ•œ๋‹ค.

AppDelegate์—์„œ didFinishLaunchingWithOptions์— initialViewController๋ผ๋Š” ๋ณ€์ˆ˜๋ฅผ UIViewController๋กœ ์„ ์–ธ

mainStoryboard ์ƒ์ˆ˜๋ฅผ ํ˜„์žฌ ์Šคํ† ๋ฆฌ๋ณด๋กœ ์„ค์ •

initialViewController์˜ ์‹œ์ž‘ ๋ทฐ์ปจํŠธ๋กค๋Ÿฌ๋กœ "Arrive"์ธ ๋ทฐ์ปจํŠธ๋กค๋Ÿฌ๋กœ ์„ค์ •

์œˆ๋„์šฐ์˜ ์Šคํฌ๋ฆฐํฌ๊ธฐ๋ฅผ main์— ๋งž๊ฒŒ ์„ค์ •

์œˆ๋„์šฐ์˜ ๋ฟŒ๋ฆฌ๋ฅผ ์„ค์ •ํ•ด๋†“์•˜๋˜ initialViewController๋กœ ์„ค์ •

๊ทธ๋ฆฌ๊ณ  ์œˆ๋„์šฐ๋ฅผ ๋ณด์—ฌ์ฃผ๊ฒŒ ์„ค์ •ํ•ด์ฃผ๋ฉด ๋

์•„๋ž˜ํ™”๋ฉด๊ณผ ๊ฐ™์ด ์Šคํ† ๋ฆฌ๋ณด๋“œ์•„์ด๋””๊ฐ€ "Arrive"์ธ ํ™”๋ฉด์ด ์‹คํ–‰๋˜๋ฉด ๋„์›Œ์ง„๋‹ค,

 

 

728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€