"presentViewController" 呈现 viewController 的 childViewController 会导致错误?

Presenting a childViewController of a viewController by "presentViewController" causes error?

  1. 这里有个viewController。在它的 addChildViewController 函数中,我添加了一个 tableViewController 作为它的 child.
  2. 现在,我们能看到的是viewController's,但我想显示tableViewController's tableView。我通过以下方式实现:

    [viewController presentViewController:tableViewController animate:YES xxx:xxx]

  3. 我在第2步做的触发了一些错误:“Application tried to present modally an active controller.”

所以问题是:

  1. 如果我想显示 viewControllerchildViewController 的视图,我不能使用 presentViewController 函数吗?

  2. 如果是,为什么?

  3. 我该如何解决这个问题?

非常感谢阅读和回答。这几天一直在找原因

这就是为您提供答案的线索"Application tried to present modally an active controller。"

有两种解决方案:

1.Instead 使用 presentViewController,你应该这样使用 addSubview

[viewController.view addSubview:tableViewController.view];

2.Instead 使用 addChildViewController:

// [viewController addChildViewController:tableViewController];
[viewController.view presentViewController:tableViewController animate:YES completion:nil];