Ich bin in der Lage, eine Zeichenfolge eine Nachricht zwischen zwei Klassen erfolgreich zu übergeben, aber meine UIAlertAction
zeigt die Nachricht nicht an.UIAlertAction zeigt keine übergebene Nachricht an
-Code sendet Nachricht
var message = String()
Alamofire.request(.POST, endPoint, headers: Auth_header, parameters: parameters, encoding: .JSON)
.validate()
.responseJSON {
response in
switch response.result {
case .Success(let data):
let value = JSON(data)
if value["message"].string != nil {
message = String(value["message"])
let dic = ["message": message]
print("hello")
NSNotificationCenter.defaultCenter().postNotificationName("notification",object: nil, userInfo: dic)
}
onCompletion()
case .Failure(let error):
print("Request failed with error: \(error)")
onError?(error)
}
-Code Empfangen und Anzeigen Nachricht
import UIKit
class TaskDetailsViewController: UIViewController {
@IBAction func submitBtn(sender: AnyObject) {
loadTasks()
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(TaskDetailsViewController.displayMessage(_:)), name: "notification", object: nil)
}
func displayMessage(notification: NSNotification) {
if let message = notification.userInfo!["message"]{
//initialize Alert Controller
let alertController = UIAlertController(title: "Success", message: message.string, preferredStyle: .Alert)
print(message)
print("world")
//Initialize Actions
let okAction = UIAlertAction(title: "Ok", style: .Default){
(action) -> Void in
self.dismissViewControllerAnimated(true, completion: nil)
}
//Add Actions
alertController.addAction(okAction)
//Present Alert Controller
self.presentViewController(alertController, animated: true, completion: nil)
}
}
Mein Ausdruck
hello
Score created.
world
was meinst du? Ist das Problem nicht bei der Methode, die die Warnung anzeigt, da die Nachricht problemlos übergeben werden kann? – noobdev