我目前正在使用名为“表格”的第三方。
在我的UIButton中,我实现了一种方法,该方法可初始化作为FormViewController子类的自定义视图控制器。我初始化嵌入在导航控制器中的FormViewController

在我的FormViewController类中,我尝试了以下两种方法,但是没有一种无效。

self.navigationController?.popViewControllerAnimated(true)
self.dismissViewControllerAnimated(true, completion: nil)


按下UIButton的代码:

@IBAction func part1Pressed(sender: AnyObject) {
    if let JSON = NSJSONSerialization.JSONObjectWithContentsOfFile("data.JSON") as? [String : AnyObject] {
        let initialValues = [
                "last_name"  : "Nordman"]
        let storyboard = UIStoryboard(name: "Main", bundle: nil)
        let viewContainerVC = storyboard.instantiateViewControllerWithIdentifier("viewContainerVC")
        let sampleController = Part1_VC(JSON: JSON, initialValues: initialValues)
        let rootViewController = UINavigationController(rootViewController: sampleController)

        rootViewController.view.tintColor = UIColor(hex: "5182AF")
        rootViewController.navigationBarHidden = false

        FORMDefaultStyle.applyStyle()
        FORMSeparatorView.appearance().setSeparatorColor(UIColor.clearColor())

        self.window = UIWindow(frame: UIScreen.mainScreen().bounds)
        self.window?.rootViewController = rootViewController
        self.window?.makeKeyAndVisible()
    }
}


谢谢!

最佳答案

您试图在不首先显示视图控制器时将其关闭。

而是将导航控制器的根视图控制器设置为其他设置(例如,关闭表单后要显示的屏幕)并以模态显示表单视图控制器:

self.presentViewController(formVc, animated: true, completion: nil)


然后,您可以在完成表单后按预期的方式关闭视图控制器。

09-05 17:54