UIViewController-DisplayChild 2.1.0

UIViewController-DisplayChild 2.1.0

Vilem Kurz 维护。



  • INLOOPX

UIViewController-DisplayChild

CI Status License Version Platform Carthage Compatible

问题:有时你需要嵌入一个控制器,但它可能已经被嵌入。例如,你有一个空的视图,你刷新它却只能再次得到一个空视图。如果你不检查其存在,你可能会不必要地创建一个新的实例。如果在 viewDidLoad 中有较重的操作,这也可能有不良的影响。

解决方案:将类型过渡到实例。如果实例不存在,它会为你创建,你还有机会通过 configuration 块在初始化后配置它。如果实例已存在,则仅执行配置块,这样你就可以显示新的内容。你不必再担心你想嵌入的控制器是否已经呈现。

示例

import UIViewController_DisplayChild

displayChild(
  ofType: ErrorViewController.self,
  in: containerView,
  animated: false,
  configuration: { controller in
      controller.model = model
  }
)