Button 按钮动作至控制器并返回Swift

Button 按钮动作至控制器并返回Swift,button,controller,navigation,swift,back,Button,Controller,Navigation,Swift,Back,我是Swift编程新手,我有一个按钮,目标是一个函数: func buttonAction(sender:UIButton!) { self.window.rootViewController.presentViewController(FirstViewController(), animated: true, completion: nil); } 然而,我在FirstView(FirstViewController的)上有一个按钮,但我想返回到MainView(MainView

我是Swift编程新手,我有一个按钮,目标是一个函数:

func buttonAction(sender:UIButton!)
{
    self.window.rootViewController.presentViewController(FirstViewController(), animated: true, completion: nil);

}
然而,我在FirstView(FirstViewController的)上有一个按钮,但我想返回到MainView(MainViewController的),我得到了错误代码:

2014-07-30 00:53:44.545 FifthTry[30275:833440] Warning: Attempt to present
<_TtC8FifthTry19FirstViewController: 0x787b5470> on <_TtC8FifthTry18MainViewController:
0x799802d0> whose view is not in the window hierarchy!
2014-07-30 00:53:44.545第五次尝试[30275:833440]警告:试图呈现
其视图不在窗口层次结构中!

怎么了?

最好将代码拆分为单独的视图和控制器类。这是很棒的课堂设计。但是,您的控制器应该根据Model View controller(苹果框架使用的范例)处理触摸事件。视图用于显示数据,控制器用于处理该视图上的用户交互。如果您在控制器上设置操作,则显示视图控制器非常容易,因为Apple鼓励您以这种方式分解类:

func buttonAction(sender:UIButton!)
{
    self.presentViewController(FirstViewController(), animated: true, completion: nil)
}

这个
buttonAction
方法是在UIViewController子类上实现的吗?您好,我将“视图”从一个控制器中分离出来,因此我有一个单独的视图和控制器文件,在这种情况下,我在View Swift文件中实现了该方法非常感谢!这种分割非常好,但是如果你想做一些小事情,比如导航到另一个视图,很多事情都需要背景知识。所以这就解决了,谢谢!