UINavigationController配下でUIHostingControllerによって表示しているSwiftUIのViewからNavigationLinkは使えるのか
結論としては使えます。端的なPlaygroundのコードとしては次のようになります。
import UIKit import SwiftUI import PlaygroundSupport struct RootView: View { var body: some View { NavigationLink("This is NavigationLink") { Text("Hello World!") } } } let hosting = UIHostingController(rootView: RootView()) let navigation = UINavigationController(rootViewController: hosting) navigation.view.frame = CGRect(x: 0, y: 0, width: 320, height: 480) PlaygroundPage.current.liveView = navigation
NavigationLinkはNavigationStackがなくても(UINavigationControllerがあれば)動く!