如何从子视图导航到mainviewcontroller

时间:2014-09-18 21:15:26

标签: uiview swift ios8 xcode6 subview

我刚刚开始使用swift,我创建了一个子视图,上面有一个按钮,我想使用该按钮将我带到我的mainviewcontroller。

我已经为不同的按钮使用了相同的功能,但是在同一个文件中有一个功能允许该按钮在下面工作代码

var playAgainButton = UIButton(frame: CGRectMake(0, 150, 320, 40))
            playAgainButton.setTitle("Play Again", forState: UIControlState.Normal)
            playAgainButton.addTarget(self, action: Selector("startGame"), forControlEvents: UIControlEvents.TouchUpInside)
            playAgainButton.backgroundColor = UIColor.redColor()
            gameOver.addSubview(playAgainButton)

是否可以使用类似的代码导航到不同的viewcontroller?

由于

1 个答案:

答案 0 :(得分:1)

您使用的是故事板,还是全部使用的是代码?如果它在代码中,请创建一个类似

的方法
func goToMainVC() {
    if let navController = self.navigationController {
        navController.popToRootViewControllerAnimated(true)
    }
}

并将按钮的目标设置为调用它的选择器。

如果您使用的是故事板,则有三种选择:

  1. ctrl +将一个连接从你的按钮拖回主视图控制器(简单但形状不好,因为它只是将主VC推回导航控制器);
  2. 在上面的@IBAction方法之前添加fun goToMainVC(),然后按住Ctrl键并将按钮拖动到包含它的视图控制器,然后选择该插座方法(大多数人会这样做做它);或
  3. 最好的选择是使用展开segue,如here所述。