본문 바로가기

swift

[iOS] NSCoder 생성 방법

    init?(viewModel: MovieListViewModel, coder: NSCoder) {
        self.viewModel = viewModel
        super.init(coder: coder)
    }

    required init?(coder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
window?.rootViewController = storyboard.instantiateViewController(identifier: "MovieListViewController", creator: { creater in
        let viewModel = MovieListViewModel(defaultMoviesUseCase: DefaultMoviesUseCase(moviesRepository: DefaultMoviesRepository(apiManager: APIManager())))
        let viewController = MovieListViewController(viewModel: viewModel, coder: creater)
        return viewController
})

 

NSCoder를 생성하려면 위의 코드를 사용한다.

'swift' 카테고리의 다른 글

[Swift] map, flatMap, compactMap, reduce  (0) 2025.02.27
[iOS] super.init(nibName: nil, bundle: nil) 이해하기  (0) 2025.02.26
[Swift] UserDefaults.synchronize()  (0) 2025.02.04
값 타입의 널 처리 주의할 점  (0) 2025.01.23
5. 복습  (1) 2023.11.12