gpt4 book ai didi

ios - presentViewController 不呈现 View ,但 viewDidLoad(...) 确实被调用

转载 作者:行者123 更新时间:2023-11-29 10:42:20 25 4
gpt4 key购买 nike

我一直在寻找其他有类似问题的用户,但这些建议似乎都没有用。我的问题是我正在开发一个 iPad 应用程序,并且在工作流程的某个时刻,用户可以生成一个模式对话框。但是,对话框永远不会出现(屏幕变暗表示正在发生某些事情)。

我像这样生成对话框:

ASecondaryImplantChooserDialog* secondaryImplantChooserDialog = [self.storyboard instantiateViewControllerWithIdentifier:@"ASecondaryImplantChooserDialog"];

[secondaryImplantChooserDialog setModalPresentationStyle:UIModalPresentationFormSheet];
[secondaryImplantChooserDialog setDefinesPresentationContext:YES];

[self presentViewController:secondaryImplantChooserDialog animated:YES completion:nil];

我应该注意到,类名和 Storyboard 标识符在设计上是相同的。

secondaryImplantChooserDialog 的 viewDidLoad(…) 方法会被调用,但其他方法不会(例如 viewWillLayoutSubviews)。我使用相同类型的代码在应用程序的其他部分生成其他对话框,这让我认为 Storyboard 中的 Controller 配置有问题,但是,我已经从对话框的配置中复制了该配置会产生,但没有效果。有什么想法吗?

更新:
感谢 Yuandra Ismiraldi 在下面的建议,我能够诊断 View 层次结构。我确实在打印输出中看到了关联的 View 。凭直觉,我从 Storyboard 中删除了 View ,并制作了一个新 View 。这解决了这个问题。

最佳答案

您还可以在 viewDidLoad 中显示 View Controller ,但这是行不通的。 viewDidAppear 确实有效,但您需要注意不要出现超过一次,因为它被更频繁地调用。

关于ios - presentViewController 不呈现 View ,但 viewDidLoad(...) 确实被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23924480/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com