黑马程序员技术交流社区

标题: 让UIAlertView自动消失(不实用第三方框架) [打印本页]

作者: wanyiyuan    时间: 2014-9-26 15:43
标题: 让UIAlertView自动消失(不实用第三方框架)
  1. UIAlertView弹出后2s让其自动消失,两种方法:

  2. (1)结合NSTimer

  3. UIAlertView baseAlert = nil;
  4. - (void) performDismiss: (NSTimer *)timer
  5. {
  6.     [baseAlert dismissWithClickedButtonIndex:0 animated:NO];//important
  7.     [baseAlert release];
  8.     baseAlert = NULL;
  9. }     
  10. - (void) presentSheet
  11. {
  12.     baseAlert = [[UIAlertView alloc]
  13.                               initWithTitle:@"Alert" message:@"\nMessage Message Message "
  14.                               delegate:self cancelButtonTitle:nil
  15.                               otherButtonTitles: nil];
  16.     [NSTimer scheduledTimerWithTimeInterval:2.0f target:self selector: @selector(performDismiss:)
  17.                                    userInfo:nil repeats:NO];
  18.     [baseAlert show];
  19. }


  20. (2)使用PerformSelector:withObject:afterDelay:方法

  21. - (void) dimissAlert:(UIAlertView *)alert
  22. {
  23.     if(alert)
  24.     {
  25.         [alert dismissWithClickedButtonIndex:[alert cancelButtonIndex] animated:YES];
  26.         [alert release];
  27.     }
  28. }

  29. - (void)showAlert{            
  30.     UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"title" message:@"message" delegate:nil
  31. cancelButtonTitle:nil otherButtonTitles:nil];
  32.    
  33.     [alert show];
  34.     [self performSelector:@selector(dimissAlert:) withObject:alert afterDelay:2.0];
  35. }
复制代码







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2