将信息发送到我返回导航控制器的视图

时间:2014-12-01 17:27:55

标签: ios iphone swift uinavigationcontroller

我有一个应用程序,包含两个不同视图中的UIView。我希望这两个UIViews显示相同的自定义绘图,并且有一个可编辑,一个不可编辑。当我从一个视图控制器转到另一个视图控制器(从具有不可编辑视图的vc到可编辑视图)时,我看到UINavigation控制器中的后退按钮。现在,在我编辑视图后,我希望更改反映在不可编辑的视图中。我想通过在按下后退按钮时收到通知来执行此操作。到目前为止,我所尝试的并没有奏效:

public class BlockingViewController: UIViewController, UINavigationControllerDelegate {

    func navigationController(navigationController: UINavigationController, viewController: UIViewController, animated: Bool) {
        print("In function")
    }
}

我从https://developer.apple.com/library/ios/documentation/UIKit/reference/UINavigationControllerDelegate_Protocol/index.html获取了navigationController方法签名,但我不确定我做了哪些更改使它无效。我拿出了可选的声明,因为包含它给了我一条错误消息,指出“可选只能应用于协议成员”。我认为这是一个协议成员,但我猜不是。

1 个答案:

答案 0 :(得分:0)

该函数声明不正确。它看起来应该是这样的,

func navigationController(navigationController: UINavigationController, didShowViewController viewController: UIViewController, animated: Bool) {
        println("In function")
    }

(或willShowViewController,如果那是你想要的那个)