【发布时间】:2014-07-28 17:30:45
【问题描述】:
在我的 iPad 应用程序中,我有一个 UIScrollView,其中包含一堆 UISwitch 元素。其中一组(大约 12 个)可以根据组状态启用/禁用。
当组状态为“启用”并且我将 UISwitch 启用属性设置为 YES 时,整个滚动视图会自然滚动。当我将 UISwitch enabled 属性设置为 NO 时,UIScrollView 在滚动时会滞后和卡顿。
我像这样启用/禁用十二个 UISwitch:
[self.switchOneOutlet setEnabled:NO];
和
[self.switchOneOutlet setEnabled:YES];
(当然,switchOneOutlet 对每个开关的命名都更具描述性。)
注意:我正在使用自动布局,但我已经测试过它是否有任何效果,但没有。这似乎与 UIScrollView 中的 UISwitch 元素的启用状态密切相关。我认为这不是自动布局问题。
当 UISwitches 被禁用时,有什么想法会导致这种卡顿吗?
【问题讨论】:
-
您是否尝试过分析您的代码以查看 CPU 时间花费在哪里?没有更多信息,很难提供帮助。一个随机的问题:当开关被禁用时,您是否正在记录一些东西?
-
没有任何记录。我可以在仪器中进行检查,尽管它看起来很简单,就像启用它们时视图滚动顺畅一样。当他们被禁用时,它会结结巴巴。我只在加载视图或点击按钮以禁用开关时检查状态。希望我能在仪器中看到这一点。
-
我在 Time Profiler 中似乎看不到口吃。有什么随意的想法吗?
标签: ios uiscrollview lag uiswitch