根據視圖控制器上的iOS文檔編寫自定義視圖控制器容器,並且我正在努力尋找一種優雅的方式來呈現第一個視圖控制器,該視圖控制器也轉發相關顯示消息如viewWillAppear:
自動。如何在視圖控制器容器中顯示第一個視圖控制器
當我嘗試transitionFromViewController:toViewController:duration:options:animations:completion:
與fromViewController:
爲nil
我得到一個錯誤。我使用UIView
動畫塊將視圖動畫化爲視圖層次結構。這似乎打破了外觀方法的自動轉發,意味着我有責任在適當的時候撥打viewWillAppear:
和ViewDidAppear:
。是否有更高效的方法將第一個視圖轉換到負責外觀和旋轉方法的屏幕上?
我的代碼在第一個視圖控制器中看起來有點類似於動畫。
self.visibleViewController = [[UIViewController alloc] init];
[self addChildViewController:self.visibleViewController];
[self.visibleViewController viewWillAppear:YES];
[self.visibleViewController.view setAlpha:0];
[self.view addSubview:self.visibleViewController.view];
[UIView animateWithDuration:0.5
delay:0
options:UIViewAnimationOptionCurveEaseOut
animations:^{
self.visibleViewController.view.alpha = 1;
}
completion:^(BOOL finished){
[self.visibleViewController viewDidAppear];
[self.visibleViewController didMoveToParentViewController:self];
}];
你有沒有找到這個解決方案?我遇到了同樣的問題... –
不,對不起。我剛剛做了viewWillAppear和viewDidAppear自己的第一個視圖控制器。 – jackslash