[英]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.