2016-08-29 2 views
0

Ich brauche diese Daten (id und Status) zu senden, um den nächsten UIViewControllerIch kann keine Daten an den nächsten UIViewController sende



    {"success":true,"id":37,"status":"WAITING"} 

aber geschehe dies in der Ausgabe ....


    id: nil // Nextview 
    status try: nil // nextView 

    ID NEXT VIEW 37 // the present view 
    status NEXT VIEW WAITING // the present view 

    id: Optional(37) // the next view 
    status try: Optional("WAITING") // the next view 

Dies ist meine Methode, um ein JSON zu erhalten und analysieren, und nach, mit der Methode, an die nächste Ansicht Controller senden.



    func sendOrder(jsonOrder: AnyObject){ 
     let request = NSMutableURLRequest(URL: NSURL(string: "http://192.168.0.21:8080/easy-coffee/get-order/")!) 
     request.HTTPMethod = "POST" 
     let postString = jsonOrder 
     print(postString) 
     request.HTTPBody = postString.dataUsingEncoding(NSUTF8StringEncoding) 
     let task = NSURLSession.sharedSession().dataTaskWithRequest(request) { data, response, error in 
      guard error == nil && data != nil else { 
       print("error=\(error)") 
       return 
      } 

      if let httpStatus = response as? NSHTTPURLResponse where httpStatus.statusCode != 200 {    print("statusCode should be 200, but is \(httpStatus.statusCode)") 
       print("response = \(response)") 
      } 
      let responseString = NSString(data: data!, encoding: NSUTF8StringEncoding)! 
      print(responseString) 
      do{ 
       let OrderDict = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.AllowFragments) as! NSDictionary 
       self.orderId = OrderDict["id"] as? Int 
       self.orderStatus = OrderDict["status"] as? String 
       self.nextView(self.orderId, orderStatus: self.orderStatus) 
      }catch{ 

      } 

     } 
     task.resume() 
    } 

Methode Daten in den nächsten UIView-Controller



     func nextView(orderId: Int, orderStatus: String){ 
     if let waitingController = storyboard!.instantiateViewControllerWithIdentifier("waitingOrder") as? WaitingOrderViewController { 
      print("ID NEXT VIEW \(orderId)") 
      print("status NEXT VIEW \(orderStatus)") 
      waitingController.id = orderId 
      waitingController.status = orderStatus 
      self.presentViewController(waitingController, animated: true, completion: nil) 

     } 

Danke Jungs in den nächsten View-Controller erstellen ein Wörterbuch Bar und in den Segue-Eigenschaften

+0

Können Sie dies bearbeiten, um nur den relevanten Code einzuschließen – WMios

+0

Verwenden Sie Storyboard? –

+0

Ja, Herr UB. Ich benutze –

Antwort

0

sendet die Daten als NSDictionary, senden setze dies.

Verwandte Themen