在 collectionViewCell 中使用 UIPageViewController

Use UIPageViewController inside a collectionViewCell

collectionViewCell 中,我想创建一个底部带有点的视图,并且我可以在视图之间滑动。我应该使用 UIPageController 来显示点并手动实现手势识别,还是可以在 collectionViewCell 中使用 UIPageViewController

是的,你可以把它放在你的牢房里。它不一定是全屏。事实上,它可以用作任何其他 UIViewController。如果你想把它嵌入到一个更小的矩形中,你可以使用 UIViewController containment。

假设您要将它嵌入到作为 UIViewController 子类的父控制器中。然后定义一个pageViewController属性并在viewDidLoad:

中添加为子view controller
self.pageViewController = [[UIPageViewController alloc] initWithTransitionStyle:UIPageViewControllerTransitionStyleScroll navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal options:nil];
self.pageViewController.view.frame = ... //set the frame or add autolayout constraints

[self addChildViewController:self.pageViewController];
[self.view addSubview:self.pageViewController.view];
[self.pageViewController didMoveToParentViewController:self];

swift:

    let pageViewController = UIPageViewController(transitionStyle: .scroll, navigationOrientation: .horizontal, options: nil)
    pageViewController.view.frame = view.frame//set frame
    self.addChildViewController(pageViewController)
    view.addSubview(pageViewController.view)
    pageViewController.didMove(toParentViewController: self)