[英]Xcode 11 beta swift ui preview not showing
只是玩 Swift UI 基本应用程序和预览 canvas 即使我处于 canvas 模式也没有显示。 应用程序运行,我有这个小片段我错过了什么?
#if DEBUG
struct ContentView_Previews : PreviewProvider {
static var previews: some View {
ContentView()
}
}
#endif
也许有人在找这个: Editor -> Canvas (Alt + Command + Enter)
要在 Xcode 的画布中预览视图并与之交互,请确保您的 Mac 在Catalina MacOS上运行。
https://developer.apple.com/tutorials/swiftui/creating-and-combining-views
请检查以下 URL 中的苹果文档https://developer.apple.com/documentation/xcode_release_notes/xcode_11_beta_2_release_notes
Xcode 11 beta 支持使用 SwiftUI 进行开发。
笔记
SwiftUI 开发工具仅在 macOS Catalina 10.15 beta 上运行时可用。
此外,如果您使用的 macOS 系统早于 10.14 等 beta 版本,您可以使用 Xcode playground 预览以下代码。
import PlaygroundSupport
import SwiftUI
struct ContentView : View {
var body: some View {
Text("Hello World")
}
}
PlaygroundPage.current.liveView = UIHostingController(rootView: ContentView())
要在 Xcode 的画布中预览视图并与之交互,请确保您的 Mac 运行的是 macOS 10.15 beta。
在Xcode 11 Beta 6 中,对于未设置特定标志的视图存在一个已知问题和解决方法(见下文)。
如果这适用于您,并且您无法设置相应的标志,您可能需要删除ContentView_Previews
周围的#if debug
标志,直到该问题在未来的 Xcode 版本中得到修复。
在不具有项目中定义的预览提供
-DDEBUG
为集OTHER_SWIFT_FLAGS
和在包裹#if DEBUG
不会在画布显示。 例如,在从未有机会指定OTHER_SWIFT_FLAGS
Objective-C 应用程序中会发生这种情况。 (51138834)解决方法:从
PreviewProvider
声明周围删除#if DEBUG
和#endif
。
Alt + 命令 + 输入
会解决问题
检查这个 xcode_11_beta_5_release_notes https://developer.apple.com/documentation/xcode_release_notes/xcode_11_beta_5_release_notes 。
对于 Xcode 11 beta 5,预览仅在 macOS Catalina 10.15 beta 5 上可用,只有 Xcode 11 beta 5 支持在 macOS Catalina 10.15 beta 5 上预览。(52059562)
我已经重新启动了 Xcode 和机器,它对我有用。 您可以尝试解决许多问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.