//移除所有子視圖控制器
- (void)removeAllChildViewControllers{
? ? for (UIViewController *vc in self.childViewControllers) {
? ? [vc willMoveToParentViewController:nil];
? ? [vc removeFromParentViewController];
? }
}
/
*? 方法說明:
*? 1、addChildViewController:向父VC中添加子VC,添加之后自動調用willMoveToParentViewController:父VC
*? 2、removeFromParentViewController:將子VC從父VC中移除,移除之后自動調用
didMoveToParentViewController:nil
*? 3、willMoveToParentViewController:? 當向父VC添加子VC之后,該方法會自動調用。若要從父VC移除子VC,需要在移除之前調用該方法,傳入參數nil。
*? 4、didMoveToParentViewController:? 當向父VC添加子VC之后,該方法不會被自動調用,需要顯示調用告訴編譯器已經完成添加(事實上不調用該方法也不會有問題,不太明白); 從父VC移除子VC之后,該方法會自動調用,傳入的參數為nil,所以不需要顯示調用。
*/
/
*? 注意點:
要想切換子視圖控制器a/b,a/b必須均已添加到父視圖控制器中,不然會報錯