Swift UI基本的なアプリで遊んでいるだけで、キャンバスモードであってもプレビューキャンバスが表示されません。アプリが実行され、この小さなスニペットが表示されます。
#if DEBUG
struct ContentView_Previews : PreviewProvider {
static var previews: some View {
ContentView()
}
}
#endif
Xcodeでキャンバスのビューをプレビューして操作するには、MacがCatalina MacOSで実行されていることを確認してください。
https://developer.Apple.com/tutorials/swiftui/creating-and-combining-views
Apple次のURLのドキュメント https://developer.Apple.com/documentation/xcode_release_notes/xcode_11_beta_2_release_notes を確認してください。
Xcode 11ベータは、SwiftUIでの開発をサポートしています。
注意
SwiftUI開発用のツールは、macOS Catalina 10.15ベータ上で実行する場合にのみ使用できます。
多分誰かがこれを探しています:Editor -> Canvas (Alt + Command + Enter)
さらに、10.14のようなベータ版より古いmacOSシステムを使用している場合は、Xcodeプレイグラウンドを使用して次のコードでプレビューできます。
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ベータ版が実行されていることを確認してください。
Xcode 11 Beta 6では、特定のフラグが設定されていないビューの既知の問題と回避策があります(以下を参照)。
これが当てはまり、対応するフラグを設定できない場合は、将来のXcodeリリースで問題が修正されるまで、#if debug
の周囲のContentView_Previews
フラグを削除する必要がある場合があります。
Xcode 11 Beta 6リリースノート を参照してください:
-DDEBUG
がOTHER_Swift_FLAGS
に設定されておらず、#if DEBUG
でラップされていないプロジェクトで定義されているプレビュープロバイダーは、キャンバスに表示されません。これは、たとえば、OTHER_Swift_FLAGS
を指定する機会がなかったObjective-Cアプリで発生します。 (51138834)回避策:
PreviewProvider
宣言の周囲から#if DEBUG
および#endif
を削除します。
これを確認xcode_11_beta_5_release_noteshttps://developer.Apple.com/documentation/xcode_release_notes/xcode_11_beta_5_release_notes 。
Xcode 11ベータ5では、プレビューはmacOS Catalina 10.15ベータ5でのみ使用でき、Xcode 11ベータ5のみがmacOS Catalina 10.15ベータ5でプレビューをサポートします(52059562)