已经在PHP编写了10年以上,并且现在尝试编写我的第一个IOS应用程序,但男人哦,男人,学习曲线陡峭而且困难!!!!我已经尝试了两个星期来获得一个简单的URL,将Json显示为一个数组,然后进入tableview,我很难过。我找到的任何演示都是在Objective C中,甚至在Swift中,但不是最新的Xcode 6.1。我看了教程,并从Apress(去年11月出版)获得了一本好书但却一无所获。我有我的tableview设置,可以正确显示静态构建的数组,所以我不需要任何帮助。我需要的是一个最新的例子,从一个url解析一个json文件并将其扔进一个数组,我可以从中构建我的表行。
答案 0 :(得分:1)
尝试这样的事情让你前进:
let url = NSURL(string: "http://date.jsontest.com")
var request = NSMutableURLRequest(URL: url!)
request.HTTPMethod = "GET"
request.setValue("application/json", forHTTPHeaderField: "Accept")
let fetchData: NSURLSessionDataTask = NSURLSession.sharedSession().dataTaskWithRequest(request) { (data, response, error) -> Void in
if error == nil {
var json = NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.allZeros, error: nil) as! NSDictionary
println("\(json)")
}
}
fetchData.resume()
答案 1 :(得分:0)
我没有任何现成的,可以完成所有这些,至少在Swift中没有。我编写了一些代码来将本地JSON数据解析为集合对象。那部分很简单。
将JSON数据解析为数组的代码可能如下所示:
if let quizNSArray: NSArray = NSJSONSerialization.JSONObjectWithData(sourceJSONData,
options: NSJSONReadingOptions(0),
error: nil) as? NSArray
{
//If JSON conversion worked this code executes.
}
您需要编写创建NSURLRequest的代码,然后编写NSURLConnection,然后提交和执行异步GET请求,然后在NSData对象中收集结果。或者,您可以使用采用完成块的NSURLConnection类方法。 (它被称为sendAsynchronousRequest:queue:completionHandler:
)。我可以在睡眠中用Objective-C编写代码,但还不必在swift中编写它。