2014-09-05 14 views
9

iOS cihazında yeni duyuyorum. Bildirimleri içeren bir uygulama geliştiriyorum.Windows'a bir bildirim geldiğinde uygulamayı kullanırken bir uyarı görüntüleniyor.Herhangi bir çalışma düzgün çalışıyor ancak başka bir uyarı geldiğinde bildirim geliyorsa zaten uyarı görüntülenir.Notification alertView mevcut alertView üzerinde görüntülenir.Ben bildirim uyarısı için Tamam 'ı tıklattığınızda Uyarı UI yeni bir görünüm denetleyicisi için gezinir ve orada yumruk alertView kalır.Onun uyarıyı tıklatırsanız, uygulama çöküyor.iOS7'de açılmış olan tüm uyarı görüntülerini nasıl iptal edersiniz

Bildirim uyarısını tıklattığımda, görüntülenen tüm uyarı görünümlerini kapatmanın bir yolu var mı.

Bu çözümü

for (UIWindow* window in [UIApplication sharedApplication].windows) 
{ 
    NSArray* subviews = window.subviews; 
    if ([subviews count] > 0) 
    if ([[subviews objec`enter code here`tAtIndex:0] isKindOfClass:[UIAlertView class]]) 
     [(UIAlertView *)[subviews objectAtIndex:0] dismissWithClickedButtonIndex:[(UIAlertView *)[subviews objectAtIndex:0] cancelButtonIndex] animated:NO]; 
} 

var Ama bu kod iOS6 değil iOS7 için çalışır. iOS7'de karşılık gelen bir kod istiyorum.

kimse peşin

cevap

1
UIAlertView *alert1 = [[UIAlertView alloc]initWithTitle:@"title" message:@"message" delegate:nil cancelButtonTitle:nil otherButtonTitles:nil]; 
     [alert1 show]; 
     [self performSelector:@selector(dismiss:) withObject:alert1 afterDelay:1.0]; 

-(void)dismiss:(UIAlertView*)alert 
{ 
    [alert dismissWithClickedButtonIndex:0 animated:YES]; 
} 
+0

Teşekkür bhavik ama bu kod doesnt çalışmalarında help.Thanks –

+0

Sen kod herhangi bir çizgi ile tüm AlertView kapatamazsınız misiniz. – bhavik

İlgili konular