提问人:JAHelia 提问时间:9/27/2023 更新时间:9/27/2023 访问量:351
XCode 15 #Preview 多个设备上的宏
XCode 15 #Preview Macro on multiple devices
问:
我找不到使用新的宏在多个设备上预览我的视图的方法。
它正在使用并在画布上并排显示预览,每个预览都具有正确的目标设备,但事实并非如此,这是我的代码:SwiftUI
XCode 15
#Preview
XCode 14
XCode 15
struct ContentView: View {
var body: some View {
Text("Hello, world!")
}
}
#Preview {
ContentView()
.previewOnDevices()
}
//#Preview {
// ContentView()
// .previewOnDevices()
//}
extension View {
func previewOnDevices() -> some View {
ForEach(DeviceName.all, id: \.self) { devicesName in
previewDevice(PreviewDevice(rawValue: devicesName))
.previewDisplayName(devicesName)
}
}
}
enum DeviceName: String, CaseIterable {
//xcrun simctl list devicetypes
case iPhoneSE = "iPhone SE (3rd generation)"
case iPhone13Mini = "iPhone 13 mini"
static var all: [String] {
return DeviceName.allCases.map { $0.rawValue }
}
}
结果是重复相同的视图:
我知道我可以从画布中的设备列表中选择我想要的任何设备,但这一次显示一个设备,这意味着我每次需要时都需要选择所需的设备,这很令人头疼,即使我有多个 #Previews,在预览中为画布中的所选设备坚持。XCode
#Preview
对此有任何想法将不胜感激。
答: 暂无答案
评论