이제서야 SwiftUI로 여러가지를 해보려합니다.
SwiftUI 의 가장 빛, Preview를 활용하는 방법입니다.
기기 설정하기
//
// ContentView.swift
// SwiftUI_Practice
//
// Created by Eunyeong Kim on 2020/05/06.
// Copyright © 2020 Eunyeong Kim. All rights reserved.
//
import SwiftUI
struct ContentView: View {
var body: some View {
Text("Hello, World!")
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
.previewDevice(PreviewDevice(rawValue: "iPhone SE")) // ⭐️
.previewDisplayName("iPhone SE") // Preview 화면명 설정.
}
}
간단하쥬 ~ ?
rawValue로 인간이 알고 있는 디바이스명을 써주면 됩니다.
당연히 띄어쓰기나 대문자 소문자가 틀리면 인식이 안됩니다. 😵case가 나뉘어져 있지않고 string으로 써야한다는건 아쉽네요
시간대, 다크모드 등을 설정하기
//
// ContentView.swift
// SwiftUI_Practice
//
// Created by Eunyeong Kim on 2020/05/06.
// Copyright © 2020 Eunyeong Kim. All rights reserved.
//
import SwiftUI
struct ContentView: View {
var body: some View {
Text("Hello, World!")
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
.previewDevice(PreviewDevice(rawValue: "iPhone SE"))
.previewDisplayName("iPhone SE")
.environment(\.colorScheme, .dark) // 🦇 다크모드
.environment(\.timeZone, .current) // 🌍 시간대 설정
}
}
시간대, 다크모드 이외에도 environment 의 키패스에는 설정이 다양하니 한 번 살펴보셨으면 좋겠어요 ~ 😀
https://developer.apple.com/documentation/swiftui/environmentvalues
여러 기기에서 한 번에 보기
//
// ContentView.swift
// SwiftUI_Practice
//
// Created by Eunyeong Kim on 2020/05/06.
// Copyright © 2020 Eunyeong Kim. All rights reserved.
//
import SwiftUI
struct ContentView: View {
var body: some View {
Text("Hello, World!")
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
Group {
ContentView()
.previewDevice(PreviewDevice(rawValue: "iPhone SE"))
.previewDisplayName("iPhone SE")
ContentView()
.previewDevice(PreviewDevice(rawValue: "iPhone 8"))
.previewDisplayName("iPhone 8")
}
}
}
Group 에서 ContentView 를 추가하면 됩니다.