[英]Transition between views as if one was modal
我有一个要隐藏的登录屏幕,例如:
[self dismissModalViewControllerAnimated:true];
但是问题是我需要这样显示:
-(void)viewDidAppear:(BOOL)animated {
[self presentModalViewController:loginScreen animated:false];
}
这意味着我将在弹出登录屏幕之前刷新当前屏幕。
因此,我正在寻找一种立即显示登录屏幕并以与dissmissModalViewControllerAnimated:true相同的动画过渡到主屏幕的方法。
您应该只能禁用动画,以便立即播放动画?
[self presentModalViewController:loginScreen animated:NO];
如果它仍然短暂闪烁,请在viewWillAppear中进行操作。
我所做的(可能不是最好的解决方案):
- (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 self.view.hidden=NO
。 有关使用块的NSTimer的信息,请参见https://github.com/jivadevoe/NSTimer-Blocks
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.