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

一,效果图。

创新互联主营巢湖网站建设的网络公司,主营网站建设方案,手机APP定制开发,巢湖h5重庆小程序开发搭建,巢湖网站营销推广欢迎巢湖等地区企业咨询

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

二,代码。

- (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秒后消失的两种实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对创新互联网站的支持!

文章题目:iOS中UIAlertView3秒后消失的两种实现方法
本文链接:https://www.cdcxhl.com/article10/gdghgo.html

成都网站建设公司_创新互联,为您提供动态网站全网营销推广企业建站ChatGPT品牌网站制作移动网站建设

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站建设网站维护公司