我想在我的基于 UIKit 的 UI 中嵌入一些 SwiftUI,不幸的是 Apple 不提供UIHostingView
, 只有UIHostingController
. 我可以或多或少地忽略该控制器并只使用它的视图,还是我真的需要将它添加为子视图控制器?如果我不这样做会怎样?
问题是在某些情况下找到父视图控制器可能很困难。UIView
本身对视图控制器一无所知,所以我必须想出自己的方法来跟踪哪个是“当前”视图控制器。除非确实有必要,否则我宁愿不这样做。
到目前为止,在我的实验中,它运行良好,无需添加UIHostingController
作为孩子。设备旋转得到适当处理,SwiftUI 的暗模式覆盖 ( .colorScheme()
) 甚至可以通过嵌入工作。