我的UIView没有呈现

时间:2014-12-15 19:32:32

标签: ios swift uikit

我是iOS开发的新手,我很难理解这些部分是如何组合在一起的,以及如何最好地使用Interface Builder(是的,我想使用IB 了解如何它与代码的变化有关。)

这是我目前的情景:

  • 我创建了一个类PageViewController : UIPageViewController,我将其与IB中的“页面视图控制器场景”相关联。这是初始视图控制器。

  • 我创建了一个类Page1ViewController : UIViewController,我在IB中与“Page1 View Controller Scene”相关联。同样在IB中,我在该场景中添加了UIView,其中包含不透明的白色背景和单个标签。

  • PageViewController的{​​{1}}方法中,我执行以下操作:

    viewDidLoad

setViewControllers([Page1ViewController()], direction: UIPageViewControllerNavigationDirection.Forward, animated: true, completion: nil)viewDidLoad的{​​{1}}方法中,我都有一个PageViewController并且两者都在显示,所以我知道它们正在加载......但是当我运行我的应用程序时,我有一个黑屏空白。

这是我想要完成的事情:

  • Page1ViewController有多个我想在IB中设计的自定义页面(它们不像开箱即用的日历示例,数据源决定每个页面视图)

  • 应用启动时,我希望println显示第一页(PageViewController

我对Swift很满意,但UIKit框架目前有点令人生畏。任何指导都将不胜感激。

1 个答案:

答案 0 :(得分:1)

我知道您已经说过将PageViewController设置为初始视图控制器但是您确定是否正确执行了此操作。它应该类似于下面的截图。 Storyboard Showing Initial view controller

我刚用一个页面控制器完成了一个简单的项目,然后在视图中加载了以下内容: -

let pagevc1 = UIViewController()
    pagevc1.view.backgroundColor = UIColor.redColor()

    self.setViewControllers([pagevc1], direction:     UIPageViewControllerNavigationDirection.Forward, animated: true, completion: nil)

这似乎很好。你是如何初始化Page1ViewController视图控制器的?