gpt4 book ai didi

json - TableView 不能快速工作,请帮助我

转载 作者:行者123 更新时间:2023-11-30 13:54:16 25 4
gpt4 key购买 nike

以下代码工作正常,但“for” block 不起作用所以“TableView”到数据中没有添加。

如何解决这个问题?

class ViewController: UITableViewController {

var NumberOfRows = 0
var BaslikArray = [String]()
var GonderenArray = [String]()

override func viewDidLoad() {
super.viewDidLoad()

parseJSON()

}
func parseJSON(){

let myUrl = NSURL(string: "http://10.10.5.1/mjson.php");
let request = NSMutableURLRequest(URL:myUrl!);
request.HTTPMethod = "POST";
request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
request.setValue("application/json", forHTTPHeaderField: "Accept")
let postString = "istek=pmliste&eposta=abc@abc.com&sifre=70c5fb2837e3edf992674a06fc876920&salt=sMb&tt=1";

request.HTTPBody = postString.dataUsingEncoding(NSUTF8StringEncoding);

let task = NSURLSession.sharedSession().dataTaskWithRequest(request) {
data, response, error in

if error != nil
{
print("error=\(error)")
return
}

let readableJSON = JSON(data: data!, options: NSJSONReadingOptions.MutableContainers, error: nil)
self.NumberOfRows = readableJSON["pm"].count

for var i = 0; i < self.NumberOfRows; i++ {
let aa = readableJSON["pm"][i]["baslik"].string!
self.BaslikArray.append(aa)
NSLog("\(readableJSON["pm"][i]["baslik"].string!)")
}

}

task.resume()

}



override func tableView(tableView: UITableView, numberOfRowsInSection sesction: Int) -> Int {
return NumberOfRows
}

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("Cell" , forIndexPath: indexPath) as UITableViewCell
if BaslikArray.count != 0 {
cell.textLabel?.text = BaslikArray[indexPath.row]
}
return cell
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}

最佳答案

数据加载完成后,您必须在 TableView 上调用reloadData。即,在 for 循环完成之后。

为了使代码变得更好,您可以做的另一件事是删除 NumberOfRows 属性。只要您需要知道有多少行,只需使用 BaslikArray.count 即可。

关于json - TableView 不能快速工作,请帮助我,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33850105/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com