gpt4 book ai didi

iphone - 让 modalViewController 出现的问题

转载 作者:行者123 更新时间:2023-11-29 05:06:18 25 4
gpt4 key购买 nike

我已经为此奋斗了几个小时。我到处搜索,似乎找不到解决我的问题的方法。我很确定我只是缺少一些关键概念。

我的 AppDelegate (didFinishLaunching) 基本上设置了我的窗口并调用 RootViewController:

 // create our window UIWindow *window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; [window setBackgroundColor:[UIColor blackColor]]; // create our rootviewcontroller RootViewController *controller = [[RootViewController alloc] init]; // add our rootviewcontroller's view to our window [window addSubview:controller.view]; // controller is now owned by window's view [controller release]; // show us to the world [window makeKeyAndVisible];

当我添加controller.view作为窗口的 subview 时,我的理解是RootVC的loadView会自动被调用。

在 RootVC loadView 中,我创建一个 tabBarController,每个选项卡都有一个 navigationController 和它自己的 viewController。一切都运行良好。

在 RootVC viewDidLoad 中,我检查这是否是用户第一次运行此应用程序,如果是,我想抛出一个模式欢迎屏幕。这是我遇到麻烦的部分。

我希望在 RootVC 的 viewDidLoad 方法中保留尽可能多的代码,并且理想情况下能够通过以下方式完成我想要的任务:

WelcomeViewController *welcome = [[WelcomeViewController alloc] init];[self presentModalViewController:welcome animated:true];[welcome release]; 

显然这不起作用。 WelcomeVC 的 loadView 尚未运行,因为我还没有显式设置它的 view 属性。我尝试过很多不同的解决方案(welcome.view - [[UIView....],使用WelcomeVC的init方法来设置self.view),但我似乎无法弹出该模式。

我应该如何实现我正在寻找的目标?最佳实践是什么?保持代码紧凑和整洁的最佳解决方案是什么?

我陷入困境,所以希望您的解决方案能让我继续开发我的应用程序!

最佳答案

虽然问题没那么简单,但解决办法却是。您必须等到主视图出现。因此,检查条件并在 viewDidAppear 方法中呈现您的模态视图,而不是在 viewDidLoad 方法中。

关于iphone - 让 modalViewController 出现的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5037851/

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