您的位置:首页 > 产品设计 > UI/UE

ios:UIAlertView自动消失

2014-12-28 16:13 459 查看
2012-10-22 15:13 1820人阅读 评论(0) 收藏 举报

iostimernull

来自:cocoachina 在写程序的过程中用到很多提示的信息,于是非常自然地就要使用UIAlertView控件。但是这些提示的信息有时候只需提示就行,不用操作,那么此时就要这个提示框自动消失就OK了。 UIAlertView弹出后2s让其自动消失,两种方法: (1)结合NSTimer

 定义UIAlertView *baseAlert;

 - (void) performDismiss: (NSTimer *)timer {    

 [baseAlert dismissWithClickedButtonIndex:0 animated:NO];//important     

 [baseAlert release];     

 baseAlert = NULL;

 }

 - (void) presentSheet {     

baseAlert = [[UIAlertView alloc]  initWithTitle:@"Alert" message:@"\nMessage Message Message "  delegate:self cancelButtonTitle:nil                               otherButtonTitles: nil];    

[NSTimer scheduledTimerWithTimeInterval:2.0f target:self selector: @selector(performDismiss:)  userInfo:nil repeats:NO];   

[baseAlert show]; } 

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

 - (void) dimissAlert:(UIAlertView *)alert {    

 if(alert)     {        

 [alert dismissWithClickedButtonIndex:[alert cancelButtonIndex] animated:YES]; 

 [alert release];  

    }

 }  

- (void)showAlert{

 UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"title" message:@"message" delegate:nil  cancelButtonTitle:nilotherButtonTitles:nil];         

 [alert show];

  [self performSelector:@selector(dimissAlert:) withObject:alert afterDelay:2.0];

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: