gpt4 book ai didi

iphone - 在 iOS 中切换 View Controller 的最佳方式

转载 作者:技术小花猫 更新时间:2023-10-29 10:29:40 26 4
gpt4 key购买 nike

我的项目中有 2 个 View Controller 。在 View Controller1 内部我想通过按下按钮切换到 View Controller 2。目前我这样做

- (IBAction)startController2:(id)sender {

viewController1 vc2 = [[viewController2 alloc] init];
self.view = vc2.view;
}

这似乎工作正常,但在按下按钮和出现第二个 View Controller 之间存在很大的延迟(4 秒)。如果我直接从 AppDelegate 调用 viewController2,加载速度会更快。我在这里做错了什么。非常感谢任何帮助。

最佳答案

需要考虑的几件事。

第 1 部分:“我在这里做错了什么”?

  1. 您绝对不是故意要执行 self.view = vc2.view。您只需让一个 View Controller 负责另一个 View Controller 的 View 。您可能想说的是 [self.view addSubview:vc2.view]。仅此一项就可以解决您的问题,但是...

  2. 不要实际使用该解决方案。尽管它几乎直接来自 some popular iPhone programming books 中的样本, 这是个坏主意。阅读"Abusing UIViewControllers"了解原因。

第 2 部分:您应该做什么

都在"Presenting View Controllers from Other View Controllers"章节.

它会归结为:

  • 一个 UINavigationController,(请参阅出色的 Apple 指南 here )然后您只需 [navigationController pushViewController:vc2]

  • “手动管理”的模态视图 Controller 堆栈,如 andoabhay suggests

  • 明确添加一个 VC 作为另一个的子项,如 jason suggests

关于iphone - 在 iOS 中切换 View Controller 的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10265392/

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