2011-12-19 69 views
2

视图我要检查的UIAlertView中是否存在在屏幕上还是不行,虽然我已经通过以下方法来完成它:警报出现在iPhone

-(BOOL) isAlertShowing 
{ 

    for (UIWindow* window in [UIApplication sharedApplication].windows) { 
     NSArray* subviews = window.subviews; 
     if ([subviews count] > 0) 
      if ([[subviews objectAtIndex:0] isKindOfClass:[UIAlertView class]]) 
       return YES; 
    } 
    return NO;  
} 

,但我才知道,这是无证一。所以,请告诉我认证的方式。

+0

当您通过[alert show]方法显示警报视图时,做一件事情,因此dat保持BOOL变量YES后。 – userar 2011-12-19 13:30:52

+2

我的方法没有看到任何私有API。它不会赢得选美比赛,但也没有错。 – 2011-12-19 13:35:04

+0

实际上,我希望当警报没有被我的设备完成时显示。例如,在位置服务的情况下,如果设备不显示警报,那么我想显示我的自定义警报。 – anshul 2011-12-19 13:36:38

回答