在url加载完成后,Swift调用ViewController

时间:2015-03-28 18:51:39

标签: ios xcode swift

我正在构建一个完全执行以下操作的应用: 用户使用他的用户名和密码登录,登录后我通过HTML Parsing从网站检索一些数据。 这些数据我想将它们传递给另一个ViewController,它是一个Table View Controller,用于显示那里的单元格中的数据。

我通过seague将Login按钮连接到另一个ViewController,但是无法等待数据可用。

我该怎么做?

override func prepareForSegue(segue: UIStoryboardSegue,
    sender: AnyObject?) {

    if segue.identifier == "supplierDetails" {
    let detailViewController = segue.destinationViewController
    as SupplierDetails

    detailViewController.Data = Data


    }
}

func PostRequest() {

    self.spinner.hidden = false
    self.spinner.startAnimating()

    let request = NSMutableURLRequest(URL: NSURL(string: "http://example.com/login.aspx")!)
    request.HTTPMethod = "POST"
    let postString = "something"
    request.HTTPBody = postString.dataUsingEncoding(NSUTF8StringEncoding)
    let task = NSURLSession.sharedSession().dataTaskWithRequest(request) {
        data, response, error in

        if error != nil {
            println("error=\(error)")
            dispatch_async(dispatch_get_main_queue(), {
                self.spinner.stopAnimating()
                self.spinner.hidden = true
            });

            return
        }

        dispatch_async(dispatch_get_main_queue(), {
            self.spinner.stopAnimating()
            self.spinner.hidden = true
            self.Data = parseHTML.getContent(data)
            self.transition()
            });
    }
    task.resume()
}

1 个答案:

答案 0 :(得分:0)

断开按钮上的segue。当您准备好移动到其他视图控制器时,请使用performSegueWithIdentifier(_:sender:)调用segue。