Transmettre des données entre ViewController et ContainerViewController

Je suis en train de travailler sur une application, et de la nécessité de transmettre les données entre la vue et containerView. J'ai besoin d'envoyer des données et de recevoir des données à partir de deux points de Vue.

Laissez-moi vous expliquer mieux:

Je peux changer le Label Maître (Toucher le Conteneur Bouton) par protocolemais je ne peux pas changer le Étiquette de Conteneur (Touchez le bouton Master). Ce qui se passe est le Maître se connecte avec le récipient par la suite. Mais n'ont pas de suivre Conteneur de liaison pour le Maître.

J'ai essayé de l'ajouter, mais des enchaînements, mais cela a fonctionné.

Transmettre des données entre ViewController et ContainerViewController

Le Maître-Vue-Contrôleur:

import UIKit

protocol MasterToContainer {
    func changeLabel(text:String)
}

class Master: UIViewController, ContainerToMaster {

    @IBOutlet var containerView: UIView!

    var masterToContainer:MasterToContainer?

    @IBOutlet var labelMaster: UILabel!


    override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
        if segue.identifier == "containerViewSegue" {
            let view = segue.destinationViewController as? Container
            view!.containerToMaster = self
        }
    }

    override func viewDidLoad() {
        super.viewDidLoad()
    }

    @IBAction func button_Container(sender: AnyObject) {
        masterToContainer?.changeLabel("Nice! It's work!")
    }


    func changeLabel(text: String) {
        labelMaster.text = text
    }
}

Le Conteneur View Controller:

import UIKit

protocol ContainerToMaster {
    func changeLabel(text:String)
}

class Container: UIViewController, MasterToContainer {

    var containerToMaster:ContainerToMaster?

    @IBOutlet var labelContainer: UILabel!

    override func viewDidLoad() {
        super.viewDidLoad()

    }

    @IBAction func button_Master(sender: AnyObject) {
        containerToMaster?.changeLabel("Amazing! It's work!")
    }


    func changeLabel(text: String) {
        labelContainer.text = text
    }
}

Quelqu'un peut m'aider?

source d'informationauteur James