【问题标题】:Adding am UIPageViewController in front of a UIViewController在 UIViewController 前面添加 am UIPageViewController
【发布时间】:2015-06-04 09:32:15
【问题描述】:

当我的应用第一次启动时,它应该在第一个应用屏幕前面显示一个教程,这些屏幕是一些具有半透明背景的屏幕。

我尝试创建一个 UIPageViewController 对象,将其视图添加为当前屏幕 (self.view.addSubview(tutorialViewController.view)) 的子视图并显示屏幕,但是当我滑动时 UIPageViewController 没有响应事件。

class TutorialViewController:UIPageViewController, UIPageViewControllerDataSource {
var tutorialsViewControllers = [UIViewController]()


override func viewDidLoad() {
    super.viewDidLoad()
    tutorialsViewControllers.append(Tutorial1ViewController())
    tutorialsViewControllers.append(Tutorial2ViewController())
    tutorialsViewControllers.append(Tutorial3ViewController())
    tutorialsViewControllers.append(Tutorial4ViewController())
    tutorialsViewControllers.append(Tutorial5ViewController())
    self.setViewControllers([tutorialsViewControllers.first!], direction: .Forward, animated: false) { (complete) -> Void in
    }
    self.dataSource = self
}

func pageViewController(pageViewController: UIPageViewController, viewControllerBeforeViewController viewController: UIViewController) -> UIViewController? {
    if let position = find(self.tutorialsViewControllers, viewController)
        where position > 0
    {
        return self.tutorialsViewControllers[position - 1]
    }
    return nil
}
func pageViewController(pageViewController: UIPageViewController, viewControllerAfterViewController viewController: UIViewController) -> UIViewController?{
    if let position = find(self.tutorialsViewControllers, viewController)
        where position < self.tutorialsViewControllers.count - 1
    {
        return self.tutorialsViewControllers[position - 1]
    }
    return nil
}
}

这是视图控制器代码

let tutorialViewController = TutorialViewController()        
self.view.addSubview(tutorialViewController.view)

【问题讨论】:

    标签: ios swift uiviewcontroller uipageviewcontroller


    【解决方案1】:

    您是否将tutorialViewController 添加为子视图控制器?

    self.addChildViewController(tutorialViewController)
    self.view.addSubview(tutorialViewController.view)
    

    【讨论】:

      猜你喜欢
      • 2014-12-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多