Swift如何使用dispatch_queue更新TableView单元格

詹妮丝·詹(Janice Zhan)

我的应用程序需要在加载tableview之前从服务器获取数据。完成获取数据后,如何使用dispatch_async使应用程序更新单元格视图。

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
{
    let cell = myTable.dequeueReusableCellWithIdentifier("editCell") as! EditTableViewCell

    cell.answerText.text = dictPicker[indexPath.row]![dictAnswer[indexPath.row]!]
    cell.questionView.text = listQuestion1[indexPath.row]
    cell.pickerDataSource = dictPicker[indexPath.row]!
    dictAnswer[indexPath.row] = cell.pickerValue
    cell.answerText.addTarget(self, action: #selector(AddFollowUpViewController.textFieldDidChange(_:)), forControlEvents: UIControlEvents.EditingDidEnd)
    cell.answerText.tag = indexPath.row
    cell.identifier = true

    return cell
}

当我习惯上面的代码时,它给我一个错误:dictAnswer为nil。从服务器获取了dictAnswer。我认为原因是在dictAnswer获取之前更新了单元格。但我不知道如何使用dispatch_async。我希望有一些可以给我提示。谢谢

可编写脚本

您的UITableViewDataSource函数应引用数组中的行数,如下所示

var data:[String]()

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return data.count
    }

    func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

    }

因此,在您的异步函数中,您可以获取数据:

func loadData() {
     // some code to get remote data
     self.data = result
     dispatch_async(dispatch_get_main_queue()) {
         tableView.reloadData()
     }
}

当您的数组为空时,(data.count返回0)tableView将不会尝试加载任何行并崩溃

Swift 3+更新:

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

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Swift如何使用dispatch_queue更新TableView单元格

来自分类Dev

在Dispatch_queue的UITableView单元格中获取相同的图像

来自分类Dev

如何通过使用Swift中的按钮从数组更新tableView中的单元格?

来自分类Dev

使用Swift 2在TableView上使用单元格

来自分类Dev

使用自定义单元格从搜索更新tableView

来自分类Dev

使用按钮快速更新 Tableview 单元格

来自分类Dev

iOS Swift Tableview:-如何根据内容显示单元格?

来自分类Dev

如何在swift4的tableview单元格中使用按钮获取JSON id

来自分类Dev

Swift - 如何使用字典为 tableView 单元格提供文本?

来自分类Dev

如何使用 Swift 处理 tableView 单元格音频播放和暂停按钮?

来自分类Dev

如何使用Rx和嵌套单元格视图突出显示tableView单元格?

来自分类Dev

如何使用UILongPressGestureRecognizer从tableview单元格按钮传递数据?

来自分类Dev

TableView单元格错误-iOS / Swift

来自分类Dev

TableView单元格错误-iOS / Swift

来自分类Dev

删除tableView单元格SWIFT

来自分类Dev

在TableView单元格上调用SwipeToDelete方法时,如何立即更新tableView值?

来自分类Dev

如何摆脱特定的TableView单元格

来自分类Dev

如何摆脱特定的TableView单元格

来自分类Dev

TableView单元格使用全屏高度

来自分类Dev

如何使用 Swift 显示从 Viewcontroller B 接收到的值到 Viewcontroller A tableview 自定义单元格文本视图?

来自分类Dev

如何使用Swift在UICollectionView单元格中加载自定义单元格(xib)

来自分类Dev

如何使用Swift创建具有动态单元格高度的静态单元格

来自分类Dev

如何使用PHP API更新Google Spreadsheet单元格

来自分类Dev

如何在iOS中停止dispatch_queue?

来自分类Dev

如何获取UIButton在Tableview单元格中的位置,以及如何在Swift中添加目标?

来自分类Dev

如何获取UIButton在Tableview单元格中的位置,以及如何在Swift中添加目标?

来自分类Dev

JavaFX 2 TableView在对象更改时如何更新单元格

来自分类Dev

使用内部UIWebView更新tableview单元格框架后出现自动布局警告

来自分类Dev

如何将静态单元格拖到tableView swift中?

Related 相关文章

  1. 1

    Swift如何使用dispatch_queue更新TableView单元格

  2. 2

    在Dispatch_queue的UITableView单元格中获取相同的图像

  3. 3

    如何通过使用Swift中的按钮从数组更新tableView中的单元格?

  4. 4

    使用Swift 2在TableView上使用单元格

  5. 5

    使用自定义单元格从搜索更新tableView

  6. 6

    使用按钮快速更新 Tableview 单元格

  7. 7

    iOS Swift Tableview:-如何根据内容显示单元格?

  8. 8

    如何在swift4的tableview单元格中使用按钮获取JSON id

  9. 9

    Swift - 如何使用字典为 tableView 单元格提供文本?

  10. 10

    如何使用 Swift 处理 tableView 单元格音频播放和暂停按钮?

  11. 11

    如何使用Rx和嵌套单元格视图突出显示tableView单元格?

  12. 12

    如何使用UILongPressGestureRecognizer从tableview单元格按钮传递数据?

  13. 13

    TableView单元格错误-iOS / Swift

  14. 14

    TableView单元格错误-iOS / Swift

  15. 15

    删除tableView单元格SWIFT

  16. 16

    在TableView单元格上调用SwipeToDelete方法时,如何立即更新tableView值?

  17. 17

    如何摆脱特定的TableView单元格

  18. 18

    如何摆脱特定的TableView单元格

  19. 19

    TableView单元格使用全屏高度

  20. 20

    如何使用 Swift 显示从 Viewcontroller B 接收到的值到 Viewcontroller A tableview 自定义单元格文本视图?

  21. 21

    如何使用Swift在UICollectionView单元格中加载自定义单元格(xib)

  22. 22

    如何使用Swift创建具有动态单元格高度的静态单元格

  23. 23

    如何使用PHP API更新Google Spreadsheet单元格

  24. 24

    如何在iOS中停止dispatch_queue?

  25. 25

    如何获取UIButton在Tableview单元格中的位置,以及如何在Swift中添加目标?

  26. 26

    如何获取UIButton在Tableview单元格中的位置,以及如何在Swift中添加目标?

  27. 27

    JavaFX 2 TableView在对象更改时如何更新单元格

  28. 28

    使用内部UIWebView更新tableview单元格框架后出现自动布局警告

  29. 29

    如何将静态单元格拖到tableView swift中?

热门标签

归档