Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
NSPageController swift示例_Swift_Macos_Cocoa - Fatal编程技术网

NSPageController swift示例

NSPageController swift示例,swift,macos,cocoa,Swift,Macos,Cocoa,我尝试使用NSPageController创建向导。但我不明白在委托方法中我需要返回什么。我将navigateForward附加到我的按钮上,当我单击它时,我得到: [\uu NSArrayM objectAtIndex:]:索引1超出边界[0..0] 看起来您的orderedViewControllers属性实际上没有设置(因为您遇到了“越界”错误) 不要使用该属性,请尝试按需使用: func pageController(_ pageController: NSPageController,

我尝试使用
NSPageController
创建向导。但我不明白在委托方法中我需要返回什么。我将
navigateForward
附加到我的按钮上,当我单击它时,我得到:

[\uu NSArrayM objectAtIndex:]:索引1超出边界[0..0]


看起来您的
orderedViewControllers
属性实际上没有设置(因为您遇到了“越界”错误)

不要使用该属性,请尝试按需使用:

func pageController(_ pageController: NSPageController, identifierFor object: Any) -> String {

    print("\(self.selectedIndex)")

    switch(self.selectedIndex)
    {
    case 0 :
        return "BoardAligmentStep1ViewController"
    case 1 :
        return "BoardAligmentStep2ViewController"
    case 2 :
        return "BoardAligmentStep3ViewController"
    default :
        return "SomeDefaultViewController"
    }
}

func pageController(_ pageController: NSPageController, viewControllerForIdentifier identifier: String) -> NSViewController {
    return self.storyboard?.instantiateController(withIdentifier: identifier) as! NSViewController
}

请再帮我一次:如何在视图控制器之间放置next prev按钮和发送数据。我尝试了很多,但都没有成功:(这是一个不同的主题;作为一个单独的问题尝试一下,我会试一试!请帮助,真的花了很多时间没有结果。如何构建类似向导的表单…永远不要设置代理自己。)
func pageController(_ pageController: NSPageController, identifierFor object: Any) -> String {

    print("\(self.selectedIndex)")

    switch(self.selectedIndex)
    {
    case 0 :
        return "BoardAligmentStep1ViewController"
    case 1 :
        return "BoardAligmentStep2ViewController"
    case 2 :
        return "BoardAligmentStep3ViewController"
    default :
        return "SomeDefaultViewController"
    }
}

func pageController(_ pageController: NSPageController, viewControllerForIdentifier identifier: String) -> NSViewController {
    return self.storyboard?.instantiateController(withIdentifier: identifier) as! NSViewController
}