RxSwift에서 첫 시작 화면 설정하기

RudinP·2025년 12월 3일

Study

목록 보기
387/388

스토리보드에서 initial 화살표를 옮기면 되지만, 그렇게되면 의존성 주입을 할 수 없게 된다.

SceneDelegate에서 작업

  • 처음으로 보일 화면을 만들어서 띄워야 함(여기서는 listScene)
  • 해당 프로젝트에서는 Scene을 만들때 ViewModel도 전달하도록 설정했으므로 필요한 값들을 생성하여 사용
  • 구현한 씬 전환 메소드로 root 화면 띄우기
import UIKit

class SceneDelegate: UIResponder, UIWindowSceneDelegate {

    var window: UIWindow?


    func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
        guard let _ = (scene as? UIWindowScene) else { return }
        
        let storage = MemoryStorage()
        let coordinator = SceneCoordinator(window: window!)
        
        let listViewModel = MemoListViewModel(title: "나의 메모", sceneCoordinator: coordinator, storage: storage)
        let listScene = Scene.list(listViewModel)
        
        coordinator.transition(to: listScene, using: .root, animated: true)
    }
...
}
profile
성장하기 위한 기록

0개의 댓글