스토리 보드를 사용하지 않고 코드베이스로 프로젝트를 만드는 방법
소개
iOS 앱을 여러 사람이 개발할 때 Storyboard를 사용하면 소스 코드에 의도하지 않은 차이가 나기 쉽고 관리가 귀찮습니다.
그렇다면 UIKit 대신 SwiftUI를 사용합시다.
그래서 스토리 보드를 사용하지 않고 코드베이스로 개발하는 방법을 정리합니다.
또한 iOS13 이상과 그 이전에는 설정 방법이 크게 다릅니다.
이 기사에서는 iOS14에서 설정하는 방법을 정리합니다.
버전 정보
Xcode 12.3
Swift 5.3.2
프로젝트 만들기
1.Xcode를 시작하여 프로젝트 만들기
평소와 비슷한 단계로 프로젝트를 만듭니다.
Xcode 12.3
Swift 5.3.2
프로젝트 만들기
1.Xcode를 시작하여 프로젝트 만들기
평소와 비슷한 단계로 프로젝트를 만듭니다.
2.Storyboard 삭제
위의 단계에서 만든 프로젝트에서 스토리 보드를 지웁니다.
다음과 같이 편집.
SceneDelegate.swift
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
if let windowScene = scene as? UIWindowScene{
let window = UIWindow(windowScene: windowScene)
window.rootViewController = ViewController.init()
self.window = window
window.makeKeyAndVisible()
}
}
3.빌드
ViewController.swift
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .red
let titleLabel: UILabel = {
let view = UILabel.init()
view.text = "はろーわーるど★"
view.textColor = .yellow
view.translatesAutoresizingMaskIntoConstraints = false
return view
}()
view.addSubview(titleLabel)
NSLayoutConstraint.activate([
titleLabel.centerYAnchor.constraint(equalTo: view.centerYAnchor, constant: 0),
titleLabel.centerXAnchor.constraint(equalTo: view.centerXAnchor, constant: 0)
])
}
}
눈에 나쁜 것 같은 색입니다만, 의도대로입니다.
결론
이번에는 iOS14에서 스토리 보드를 사용하지 않는 프로젝트 만들기 ~ 빌드까지를 정리했습니다.
코드에서 AutoLayout을 사용하는 경우 아래 코드에서 Autoresizing을 비활성화해야하므로주의하시기 바랍니다.
ViewController.swiftview.translatesAutoresizingMaskIntoConstraints = false
Reference
이 문제에 관하여(스토리 보드를 사용하지 않고 코드베이스로 프로젝트를 만드는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/RTkd59/items/8e2f769ce46b17688831
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
view.translatesAutoresizingMaskIntoConstraints = false
Reference
이 문제에 관하여(스토리 보드를 사용하지 않고 코드베이스로 프로젝트를 만드는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/RTkd59/items/8e2f769ce46b17688831텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)