首页 > 系统 > iOS > 正文

iOS中UIAlertView3秒后消失的两种实现方法

2020-07-26 02:36:06
字体:
来源:转载
供稿:网友

一,效果图。

二,代码。

- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. UIAlertView* alert = [[UIAlertView alloc]initWithTitle:nil message:@"此信息3秒后消失" delegate:nil cancelButtonTitle:nil otherButtonTitles:nil, nil]; [alert show]; [self performSelector:@selector(dismissAlert:) withObject:alert afterDelay:3.0];}- (void)dismissAlert:(UIAlertView*)alert { if ( alert.visible ) {  [alert dismissWithClickedButtonIndex:alert.cancelButtonIndex animated:YES]; }}

下面给大家介绍下UIAlertView自动消失的两种方法

话说,在写程序的过程中用到很多提示的信息,于是非常自然地就要使用UIAlertView控件。

但是这些提示的信息有时候只需提示就行,不用操作,那么此时就要这个提示框自动消失就OK了。

UIAlertView弹出后2s让其自动消失,两种方法:

(1)结合NSTimer

UIAlertView baseAlert = nil;- (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:nil otherButtonTitles:nil]; [alert show]; [self performSelector:@selector(dimissAlert:) withObject:alert afterDelay:2.0];}

总结

以上所述是小编给大家介绍的iOS中UIAlertView3秒后消失的两种实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对武林网网站的支持!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表