我面临着一个严重的问题。我有一个名为“ abc.framework”的框架,它包含一个函数,您可以在其中传递viewController对象。

//this is the method in my framework

func launchView(view:UIViewController){

}

//this is what needs to be written on App side

myFrameworkFile.launchView(view: self)


上面的方法用于在通过的viewController对象顶部显示框架的viewcontroller,即abc.framework viewController。启动方法包含以下代码:

func launchView(view:UIViewController)
{


var rootController: UIViewController?

    rootController = view

    let storyboard = UIStoryboard(name: "abcFrameworkBundle.bundle/abcUIMain", bundle: nil)
    let VC1 = storyboard.instantiateViewController(withIdentifier: "selectedviewcontroller") as! SelectedViewController

    rootController?.present(VC1, animated: true, completion: nil)
}


从上面的方法中,正在调用viewController的SelectedControllerController的viewDidLoad方法,但是没有显示出来,并且出现了以下警告


  警告:尝试呈现
  其视图不在窗口层次结构中!


有没有人遇到过同样的问题?

最佳答案

我猜您在myFrameworkFile.launchView(view: self)或更早版本中将此方法称为viewDidLoad。尝试将其移动到viewDidAppear

10-08 12:10