UIAlertView在iOS 7上被解雇后的短暂延迟

时间:2013-12-13 09:29:00

标签: ios delay uialertview lag dismiss

我注意到在解雇UIAlertView后,应用程序无法识别任何触摸的时间很短。 所以,我做了一个非常简单的项目,它只包含2个UIButton个(一个用于将label更改为一个随机数,另一个用于显示UIAlertView)。

在设备(iPhone4)和模拟器(iOS 6和iOS 7)上进行了测试。 结果是这种滞后只发生在iOS 7上。在iOS 6.x上,它运行得很好。

延迟时间取决于应用的大小。在我上面描述的测试项目中,延迟大约是0.3秒。但是,在我的另一个项目中,它可能长达1秒钟。

我还使用了GCD,请按照以下步骤操作:

- (void) startSomeLongOperation {
   //display alertView
   dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_NORMAL, 0), ^{
       // …do something that takes long…
       dispatch_async(dispatch_get_main_queue(), ^{
            //dismiss alertView
       });
   });
}

我试过的另一个:

dispatch_async(dispatch_get_main_queue(), ^{
  //show and dismiss alertView      
 });

它们都不起作用。

所以,我得出结论,这种延迟是由iOS 7引起的。

以前有没有人经历过这个?

0 个答案:

没有答案