真实示例:使用NSURLSession提取JSON并填充UITableView第2部分。

这是这篇文章的第1部分。

在第1部分中,我们使用NSURLSession从Web上获取了JSON并将其存储到本地数组tableArray中

让我们开始打开Main.storyboard

继续并删除默认的ViewController

现在,您应该有一个空白的Main.storyboard

在右侧平面上,从对象库中拖放UITableViewController

在将UITableViewController连接到代码之前,我们需要使ViewController.swiftUITableViewController保持一致

为此,请打开ViewController.swift。

更改此:

  ViewController类:UIViewController 

对此:

  ViewController类:UITableViewController 

现在,通过打开main.Storyboard并单击控制器的外部,将UITableViewController连接到我们的代码。

打开Identity Inspector并将更改为ViewController

现在我们需要确保它是Initial View Controller

现在让我们回到ViewController.swift中添加一些内容。

在viewDidLoad中添加以下两行代码:

  self.tableView.dataSource =自我 
  self.tableView.delegate =自我 

为了保持干净整洁,让我们创建ViewController扩展

把这个放在 类大括号外

现在,在“ 属性”检查器中 ,将“ 单元格”作为标识符

现在,我们要做的就是在parseJSON()函数中添加self.tableView.reload()

现在,您可以使用C ommand + R运行您的项目。

您在控制台中看到该阵列的时间可能要延迟到填充表格所需的时间,或者直到您单击屏幕后才会显示。

这是因为未在主线程上调用self.tableView.reload()

您应该始终在主线程上更新UI。

我们可以这样简单地包装重载:

  DispatchQueue.main.async { 
  self.tableView.reloadData() 
  } 

现在,我们的表可以更快地填充。

而已! 现在,我们有了一个简单的准系统,其中填充了从网上获取的JSONUITableView

对以后的帖子有任何意见或建议,请告诉我。 😊

如果您迷路了,我在GitHub上有完整的项目。