美文网首页
移除所有子视图控制器

移除所有子视图控制器

作者: GOOGxu | 来源:发表于2017-03-24 16:01 被阅读0次

    //移除所有子视图控制器

    - (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必须均已添加到父视图控制器中,不然会报错

    相关文章

      网友评论

          本文标题:移除所有子视图控制器

          本文链接:https://www.haomeiwen.com/subject/ppsfottx.html