您好,登錄后才能下訂單哦!
一,效果圖。
二,代碼。
- (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秒后消失的兩種實現方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。