gpt4 book ai didi

iphone - iOS 6 View 层次结构噩梦

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

我在应用程序商店中有一个几乎获得 5 星评级的应用程序,但是当 iOS 6 发布时,该应用程序主视图层次结构中的一些 View 开始闪烁。这种情况发生在商店中的应用程序(iOS6 发布时我将其删除)以及模拟器中。

我花了大约 14 个小时,尝试了 100 件事,在 Xcode 中调试它,但无法得到任何牵引力。 subview 消失并重新出现,就像有一个小 Sprite 每秒为每个 subview 随机设置可见属性关闭和打开最多 10 次,在一切正常的较长时间段之间。

主界面是一个用户可以旋转的转盘,我在图层上使用 3D 变换来旋转它。我发现的唯一模式是,当转盘旋转到某些离散位置时,4 个消失的 subview 中的 3 个一起消失,就好像锁定为一个 subview 一样。

第四个消失的 subview 应该是静态图像,并且它会闪烁,没有可辨别的模式。

我很乐意提供有关如何调试此问题的任何想法和提示。这不是内存警告,并且执行额外的 [setNeedsToDisplay] 似乎没有效果。我开始认为 Apple 在 iOS6 中破坏了某些东西,但我找不到其他人谈论这些问题。

<小时/>

以下是主视图的 subview 和 CALayers 层次结构的分割:

  1. 我的层次结构包含 2 个基本 CALayer,这很好。
  2. 上面是一个非常大的自定义 UIView(使用drawRect)和一个大的 UIImageVIew 总是一起闪烁,当底部一个被旋转到某些位置。只有最下面的一个是旋转。
  3. 上面是一个不会闪烁的自定义文本绘制 UIView。
  4. 上面是一个红色的小针图形 UIImageView,在与上述2个 View 完全相同的时间。这是 Vanilla UIImageView;没有转换或子类或自定义绘图代码!和但它仍然有同样的闪烁。
  5. 上面是一个不可见的 UIButton,它似乎一直在工作。
  6. 上面是一个 UIImageView,它是一个闪烁的小图形并持续亮起,与基于旋转的闪烁无关其他 3 个“链接”层(我说链接是因为它们喜欢消失全部在一起)。

最佳答案

(这并不是一个真正的答案,这是对 The Rat 答案的回复,但我还没有评论的声誉点)

是的,显式设置 zPositions 似乎可以解决这个问题,是的,这很奇怪。我也遇到了这个问题并在这里发布了博客:iOS 6 Rendering Bug: 3D-Rotation Causes Layers to Render Without Respect for View Hierarchy 。这似乎是 iOS 6 中引入的渲染错误。博客中有一个链接,指向我向 Apple 提交的该错误的 Open Radar 版本,以及一个示例项目,您可以运行该项目来查看该错误和 zPosition 修复。

关于iphone - iOS 6 View 层次结构噩梦,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12538468/

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