gpt4 book ai didi

iphone - viewDidAppear : not firing under certain conditions?

转载 作者:行者123 更新时间:2023-12-03 18:51:45 28 4
gpt4 key购买 nike

我的应用程序 Nib 中有以下项目:

  • 通常:文件所有者、第一响应者窗口、委托(delegate)
  • View Controller “a”
    • 查看“b”
      • UIScrollView“c”
      • “b”中的一些其他内容

在我的 AppDelegate applicationDidFinishLaunching 中,我这样做:

  1. [窗口 makeKeyAndVisible]
  2. [窗口addSubView:a.view];
  3. 创建一个 View Controller “d”
  4. 使用 Root View Controller “d”创建一个导航 Controller “e”
  5. 调用 [c addSubView:e.view]

问题:当我执行上述所有操作时,viewDidAppear: 不会为“d”触发。 (但是 viewDidLoad 正在触发。)我如何找出它不触发的原因,并修复它以便它能够触发?

(为什么我想使用viewDidAppear:上面涉及一些链式动画,而viewDidAppear看起来是 View Controller 知道其 View 何时已加载并动画化的好地方,因此它可以触发后续动画。)

最佳答案

通常,当您手动调整 View 层次结构时,您不会得到 -viewWillAppear:-viewDidAppear 等;它们由各种 SDK 方法调用,例如 -pushViewController:animated:-presentModalViewController:animated: 以及在选项卡获取时由 UITabBarController 调用已选择。

当您自己将 View 添加到层​​次结构时,它可能会也可能不会出现在屏幕上或即将出现在屏幕上; -addSubview: 方法不会对您的意图做出任何假设。只需在添加 View 时自己调用它们即可。

关于iphone - viewDidAppear : not firing under certain conditions?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2144714/

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