一,效果图。
二,代码。
1
2
3
4
5
6
7
8
9
10
11
12
|
- ( 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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
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:方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
- ( 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秒后消失的两种实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!