对控制器和后退Swift的按钮操作

时间:2014-07-29 22:56:12

标签: button controller navigation swift back

我是编程Swift的新手,我有一个带有目标功能的Button:

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

}

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

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!

有什么问题?

1 个答案:

答案 0 :(得分:0)

将代码拆分为单独的View和Controller类非常棒。这是一流的设计。但是,您的控制器应该根据Model-View-Controller处理触摸事件,这是Apple框架使用的范例。视图用于显示数据,控制器用于处理该视图上的用户交互。如果您在控制器上设置操作,那么呈现视图控制器非常容易,因为这是Apple鼓励您分解课程的方式:

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