模型与控制器之间的通信

FRE*_*405 2 model-view-controller ios swift

从许多不同来源阅读后,我对View和Model应如何在MVC中与Swift进行通信感到非常困惑

如何用Swift做同样的事情(这里是Objective-c)

在模型中:

(void)receivedMessageFromServer {
    // Fire the notification
    [[NSNotificationCenter defaultCenter] postNotificationName:@"ReceivedData" object:nil];   
} 
Run Code Online (Sandbox Code Playgroud)

在View Controller中处理"ReceivedData"通知:

(void)viewDidLoad {
    [NSNotificationCenter defaultCenter] addObserver:self selector:@selector(receivedDataNotification:) name:@"ReceivedData" object:nil];
}

-(void)receivedDataNotification:(id)object {
    NSLog(@"Received Data!");
}
Run Code Online (Sandbox Code Playgroud)

Kee*_*nle 5

func receivedMessageFromServer() {
    NSNotificationCenter.defaultCenter().postNotificationName("ReceivedData", object: nil)
}

override func viewDidLoad() {
    super.viewDidLoad()
    NSNotificationCenter.defaultCenter().addObserver(self, selector: "receivedDataNotification:", name: "ReceivedData", object: nil)
}

func receivedDataNotification(object: AnyObject) {
    println("Received Data!");
}
Run Code Online (Sandbox Code Playgroud)