我有一个我想要隐藏的登录屏幕:
[self dismissModalViewControllerAnimated:true];
但问题是我需要像这样显示它:
-(void)viewDidAppear:(BOOL)animated {
[self presentModalViewController:loginScreen animated:false];
}
这意味着我会在弹出登录屏幕之前刷新当前屏幕。
所以我正在寻找一种方法来立即显示登录屏幕并转换到主屏幕,其动画与dissmissModalViewControllerAnimated相同:true。
答案 0 :(得分:0)
你应该能够立即禁用动画吗?
[self presentModalViewController:loginScreen animated:NO];
如果它仍然短暂闪烁,请在viewWillAppear中执行。
答案 1 :(得分:0)
我做了什么(也许不是最好的解决方案):
- (void)viewDidLoad
{
// Initial set to hidden for avoiding a flickering UI
self.view.hidden=YES;
}
-(void)viewWillAppear:(BOOL)animated
{
[NSTimer scheduledTimerWithTimeInterval:0 block:^{
[self presentModalViewController:self.loginViewController animated:NO];
} repeats:false];
}
在你发送ModalViewController之前,你设置了self.view.hidden=NO
。
有关使用块的NSTimer