我有一个UIPageViewController
子类,其中包含一堆UIViewController
个子类。
在其中一个UIViewController
子类中的某个时刻,如果用户执行某些操作,我想删除整个UIPageViewController
系统,以便仅显示最初添加到的基础子视图。
我将UIPageViewController
子类添加为主视图控制器的子视图控制器,如下所示:
ImageGalleryPageViewController *galleryPageViewController = [[ImageGalleryPageViewController alloc] initWithImagesAndCaptions:imagesAndCaptions];
[self addChildViewController:galleryPageViewController];
[self.view addSubview:galleryPageViewController.view];
[galleryPageViewController didMoveToParentViewController:self];
我很好奇从内部UIViewControllers
删除它的最佳做法是什么。
我的第一反应是:
[self.imageGallery removeFromParentViewController];
[self.imageGallery.view removeFromSuperview];
(在我的UIViewController
子类中,我有一个对它所包含的UIPageViewController
子类的引用,我告诉UIPageViewController
子类被删除。
UIPageViewController
拨打电话的UIViewController
,也许第二个removeFromSuperview
电话不会被调用,因为视图会被视为除去。
在执行上述两种方法的UIPageViewController
子类上使用专门的方法会更好吗?有什么不同的东西?
此外,为什么有必要同时打电话?为什么removeFromParentViewController
也不会删除其view
?为什么有必要添加两者?
答案 0 :(得分:0)
我会评论,但我没有足够的代表。 :(
我建议你说什么:
在执行上述两种方法的UIPageViewController子类上有一个专门的方法会更好吗?
您可以轻松地使用NSNotification。