Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/198.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
何时将SwiftUI界面与UIKit生命周期一起使用?_Swift_Swiftui - Fatal编程技术网

何时将SwiftUI界面与UIKit生命周期一起使用?

何时将SwiftUI界面与UIKit生命周期一起使用?,swift,swiftui,Swift,Swiftui,我想知道为什么我们应该创建和使用具有UIKit生命周期的SwiftUI界面? 我对此感到困惑!因为: 1-如果您想要UIKit编程,请选择脚本作为接口,然后选择UIKit作为生命周期 2-如果您想要SwiftUI编程,请选择SwiftUI作为界面,然后选择SwiftUI作为生命周期 3-如果你想改变你的Swift语言,那么把它改成Objective-C,你会得到故事板作为界面,UIKit作为生命周期 下面是选项4: 4-您可以将界面和UIKit作为生命周期使用SwiftUI!这是这个问题的主题!

我想知道为什么我们应该创建和使用具有UIKit生命周期的SwiftUI界面? 我对此感到困惑!因为:

1-如果您想要UIKit编程,请选择脚本作为接口,然后选择UIKit作为生命周期

2-如果您想要SwiftUI编程,请选择SwiftUI作为界面,然后选择SwiftUI作为生命周期

3-如果你想改变你的Swift语言,那么把它改成Objective-C,你会得到故事板作为界面,UIKit作为生命周期

下面是选项4:

4-您可以将界面和UIKit作为生命周期使用SwiftUI!这是这个问题的主题!
如果我没有弄错SwiftUI处理与UIKit不同的事情,那么我们不需要在SwiftUI中定义委托或协议之类的东西,但是在这种情况下为什么我们得到AppDelegateScenedLegate!如果我们创建这样一个Xcode项目,其利弊是什么?

对于SwiftUI,您在大多数情况下都应该使用SwiftUI生命周期

如果需要某些AppDelegate方法,可以使用
@UIApplicationDelegateAdaptor

但是,在某些情况下,您需要UIKit生命周期:

  • 访问
    SceneDelegate
    (请参阅)
  • 部署目标iOS 13(iOS 14+上提供SwiftUI生命周期)

当您有部署目标iOS 13时。