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
}