【问题标题】:UIPageViewController with three UITableViews embedded in Navigation Controllers在导航控制器中嵌入三个 UITableView 的 UIPageViewController
【发布时间】:2023-03-29 20:10:01
【问题描述】:

我创建了三个不同的UITableViewControllers,它们最初嵌入在UITabBarController 中,但我决定改用pageControl。我已经删除了选项卡栏,但我不知道如何以“编程方式”创建一个 pageView,最好使用已经创建的三个 tableview


我以前使用过 pageControl,但只是使用一个视图控制器进行简单的操作,并根据页面控件更改该视图的内容。


NSArray *viewControllers = [[NSArray alloc]initWithObjects:[self.storyboard instantiateInitialViewController], nil];
self.pageViewController = [[UIPageViewController alloc]initWithTransitionStyle:UIPageViewControllerTransitionStyleScroll navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal options:nil];
self.pageViewController.delegate = self;
self.pageViewController.dataSource = self;
[self.pageViewController setViewControllers:viewControllers direction:UIPageViewControllerNavigationDirectionForward animated:YES completion:NULL];

我也想过并尝试了一个简单的向右滑动手势作为转场,但由于某种原因它不起作用。任何帮助或建议表示赞赏。谢谢。

【问题讨论】:

    标签: ios objective-c xcode uipagecontrol


    【解决方案1】:

    你实现UIPageViewControllerDataSource这两个必需的方法了吗?

    直接来自docs: “要支持基于手势的导航,您必须使用数据源对象提供视图控制器。”

    - (UIViewController *)pageViewController:(UIPageViewController *)pageViewController
      viewControllerBeforeViewController:(UIViewController *)viewController
    
    - (UIViewController *)pageViewController:(UIPageViewController *)pageViewController
       viewControllerAfterViewController:(UIViewController *)viewController
    

    【讨论】:

      猜你喜欢
      • 2012-07-05
      • 2015-11-05
      • 2017-10-24
      • 1970-01-01
      • 2019-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多