【发布时间】:2022-12-27 13:34:21
【问题描述】:
I'm coding according to SwiftUI tutorial fromApple. But the preview result on my end which was without navigation title was different fromApplethough the code was the same and .navigationTitle was working well on iPhone simulator. Anyone who could help finding out the reason? Will be appreciate!
import SwiftUI
struct LandmarkDetail: View {
@EnvironmentObject var modelData: ModelData
var landmark: Landmark
var landmarkIndex: Int {
modelData.landmarks.firstIndex(where: { $0.id == landmark.id })!
}
var body: some View {
ScrollView {
VStack {
CircleImage(image: landmark.image.resizable())
.scaledToFit()
Text(landmark.name)
.font(.headline)
.lineLimit(0)
Toggle(isOn: $modelData.landmarks[landmarkIndex].isFavorite) {
Text("Favorite")
}
Divider()
Text(landmark.park)
.font(.caption)
.bold()
.lineLimit(0)
Text(landmark.state)
.font(.caption)
Divider()
MapView(coordinates: landmark.locationCoordinates)
.scaledToFit()
}
.padding(16)
}
.navigationTitle("Landmarks")
}
}
struct LandmarkDetail_Previews: PreviewProvider {
static var previews: some View {
let modelData = ModelData()
return Group {
LandmarkDetail(landmark: modelData.landmarks[0])
.environmentObject(modelData)
.previewDevice("Apple Watch Series 5 - 44mm")
}
}
}
【问题讨论】:
-
Put a NavigationView in the Preview area