我正在做一个模态视图控制器(changeviewcontroller),它只会出现 5 秒,那么该怎么做呢?我需要编写哪些重要代码?
user1584341
问问题
212 次
6 回答
2
使用-performSelector:withObject:afterDelay:
方法:
-(void)someButtonClicked:(id)sender
{
[self performSelector:@selector(openController) withObject:nil afterDelay:5.0];
}
-(void)openController
{
//present the view controller
SomeViewController *ctrl = ....;
[self present...];
}
于 2012-08-20T10:38:52.897 回答
0
对于 MVC(模型视图控制器)
-(void)viewWillAppear:(BOOL)animated
{
[self performSelector:@selector(CloseViewController) withObject:nil afterDelay:5.0];
}
-(void)CloseViewController{
[yourViewController dissmissModalViewController];
}
如果你在这里使用任何视图,那么它也可以像下面这样工作
-(void)viewWillAppear:(BOOL)animated
{
[self performSelector:@selector(hideView) withObject:nil afterDelay:5.0];
}
-(void)hideView{
CATransition *animation = [CATransition animation];
[animation setDelegate:self];
[animation setType:kCATransitionFromBottom];
[animation setDuration:1.0];
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:
kCAMediaTimingFunctionEaseInEaseOut]];
[[yourView layer] addAnimation:animation forKey:@"transitionViewAnimation"];
yourView.hidden=YES;
}
在上面我使用了 MVC 的 Imageview Insted。我希望它对你有用...... :)
于 2012-08-20T11:14:45.850 回答
0
查看 NSTimer 类。将其设置为运行 5 秒并调用 selecor 以关闭视图。这一切都在 Apple 文档中
于 2012-08-20T10:30:31.613 回答
0
做这个:
[UIView animateWithDuration:5
animations:^{
//add you modal view here
}];
于 2012-08-20T10:37:00.630 回答
0
[NSTimer scheduledTimerWithTimeInterval:5.0 target:self selector:@selector(theSelector) userInfo:nil repeats:NO];
这应该这样做。只需插入正确的选择器。
于 2012-08-20T10:37:28.070 回答
0
试试这个:在模态视图控制器类中创建一个方法来关闭模态视图控制器。
-(void)dismissModal{
[self dissmissModalViewController];
}
从您的 viewdidLoad 方法中以 5 秒的延迟调用此方法。
-(void)viewDidLoad{
[self performSelector @selector(dismissModal) afterDelay:5.0 ];
}
检查语法,我没有使用 xcode 。
于 2012-08-20T11:02:24.430 回答