代码之家  ›  专栏  ›  技术社区  ›  Jukurrpa

iPhone-子视图堆叠减慢应用程序速度?

  •  0
  • Jukurrpa  · 技术社区  · 14 年前

    正如标题所说,我想知道堆叠子视图是否会减慢iPhone应用程序的速度。

    例如,我有一个 UIViewController 它有一个占据整个屏幕的视图。当用户按下按钮时,我创建第二个视图控制器,并将其视图添加为原始VC的子视图,使第二个视图完全隐藏第一个视图。

    应用程序是否有某种自动优化,比如“好的,我知道为屏幕的每个像素绘制什么,我停止寻找子视图”?

    如果不是,我不认为堆叠2个全屏视图可以真正减慢应用程序的速度,但是如果3个、4个或更多视图本身包含许多子视图(标签、图像),它们会有问题吗?

    3 回复  |  直到 14 年前
        1
  •  4
  •   falconcreek    14 年前

    阅读 View Controller Guide 章节对 Modal View Controllers memory management . 当您希望临时显示新屏幕和 UINavigationController 用于“向下钻取”视图。

        2
  •  2
  •   ZaBlanc    14 年前

    您可以在未看到的视图上始终设置uiview hidden=yes。这将阻止重画。

        3
  •  1
  •   taskinoor    14 年前

    这在很大程度上取决于子视图包含的内容以及应用程序的总内存负载。对于iPhone这样的设备来说,记忆是非常重要的,你不应该保留那些你不需要的东西。当您添加许多子视图而不释放任何子视图时,您的内存需求显然会增加。这可能会减慢应用程序的速度,甚至可能导致应用程序崩溃。堆叠两个可能不是问题,但堆叠许多不是很好的设计。

    因此,总结是,您应该始终通过仪器检查应用程序的内存负载,并始终正确响应内存警告。