1

我有以下情况(在 iPad、iOS 5.1 上测试):

  1. 里面有一个带有 UINavigationController 的 UIPopoverController 和自定义弹出背景视图(UIPopoverBackgroundView 的子类)。
  2. 导航控制器中有一个通用的 UIViewController(我们称之为 VC1)作为根 VC。
  3. 我在导航控制器堆栈上使用 UITableView 推送另一个 UIViewController (VC2)。

效果:表格滚动不稳定(看起来像 10-15 fps)。出于测试目的,我使用了一个最简单的 UITableView,没有图像等,所以它不是由错误的 UITableView 实现引起的。

  • 如果 VC2 是 Navigation Controller 的根视图控制器,即使使用自定义 Popover 背景,滚动也不会断断续续。
  • 如果作为第二个 VC 推送,它也不会不稳定,但我没有为 UIPopoverController 使用自定义 bg 视图类。

我在我的 UIPopoverBackgroundView 子类中记录了每个被覆盖的方法,并且它们不会被不断地调用或任何东西,理论上这可能会导致性能下降。我将进一步调试问题,但也许有人已经解决了它?

或者也许有人对如何找到罪魁祸首有很好的建议?我尝试查看时间分析器以查找有问题的函数调用,但在那里我没有找到太多...

4

0 回答 0