본문 바로가기
프로그래밍

[iOS] 스위프트(Swift) 에서 스토리보드(StoryBoard) 삭제하기

by 밝음의기둥 2017. 7. 18.
반응형

iOS 개발을 시작하면서 스토리보드를 사용하다 보니 불편한 점들이 있더군요. 초보자로서 다른 고수님들은 스토리보드를 어떻게 사용하지 궁금증이 생겼어요. 주변의 고수님들에게 물어보니, 화면의 개수가 적고, 복잡하지 않으며, 화면 전환의 순서가 일반적인 흐름일 때 사용하면 편하며, 반대일 경우에는 불편하니, 상황에 맞춰서 사용하는 것이 올바르다는 답변을 주시더군요. 그리고, 속도면에서 스토리보드를 사용하지 않는 쪽이 조금더 괜찮다고 하시는데, 개발자가 엉망으로 개발하면 오히려 스토리보드 사용하는 것이 나을 때도 있다고 하시네요. 초보자의 입장에서 보면 개발자의 능력 문제인가? 하는 생각이 들었어요. 그래서, 개발에 대한 공부를 한다는 생각으로 스토리보드를 삭제하는 방법을 찾아보았습니다. Object-C 로 구현되어 있는 것은 몇몇 보이는데, Swift로 구현된 것은 찾기가 쉽지 않더군요. 하지만, 비슷한 예제를 찾아서 실습해 보았습니다.





1. Single View Application을 생성합니다. (예전에는 Empty Application이라는 항목이 있었는데, 사라져 버렸네요.)



2. Product Name을 원하시는 것으로 지정합니다. (저는 NoStoryBoard 라고 지정했습니다.)



3. 프로젝트 생성 경로를 원하시는 곳으로 지정하고 생성합니다.



4. 프로젝트 생성 후 Display Name을 지정합니다. (저는 No StoryBoard라고 지정했습니다.)



5. Info.plist의 정보 중 Main storyboard file base name 항목의 값을 삭제합니다. 그리고, Launch screen interface file base name 항목의 값도 삭제합니다.



6. Main.storyboard 를 삭제합니다. 삭제 시 레퍼런스만 삭제할 것인지 파일을 휴지통에 버릴 것인지 물어보는데 저는 휴지통에 버렸습니다. 원하시는 것으로 하시면 됩니다.




7. LaunchScreen.storyboard 를 삭제합니다. 삭제 시 레퍼런스만 삭제할 것인지 파일을 휴지통에 버릴 것인지 물어보는데 저는 휴지통에 버렸습니다. 원하시는 것으로 하시면 됩니다.




8. AppDelegate.swift 소스에서 application 함수의 내용을 아래와 같이 수정합니다.


> application 함수 소스 내용

func application(_ application: UIApplication, 

didFinishLaunchingWithOptions launchOptions: 

[UIApplicationLaunchOptionsKey: Any]?) -> Bool {

// Override point for customization after application launch.

window = UIWindow(frame: UIScreen.main.bounds)

window!.backgroundColor = UIColor.red

window!.rootViewController = ViewController()

window!.makeKeyAndVisible()

return true

}



9. 실행결과를 확인합니다.




참고자료 > How to create UICollectionView using Swift without storyboards





반응형