zoukankan      html  css  js  c++  java
  • UITableView数据不显示(在console中已显示相应数据)

    出现这个情况的原因是:没有使用 DispatchQueue.main.async
    TableView.reloadData()必须写在那个里面。

    // Asynchronously reload the data and display on the tableview
    DispatchQueue.main.async {
            // Reload the tableview
            self.searchResultTableView.reloadData()
    }

    顺便提一句我出现的错误现象:我的UIView上有一个Search button,从youtube API上根据用户在文本框中输入的关键字读取youtube返回的Json信息。点击Search button两次才会显示数据,更改关键词以后也是这样,第一次按下Search button,仍然是之前的搜索结果。但在console上,第一次点击Search后,就已经出现新的搜索结果。

    DispatchQueue.main.async的意思是 异步。就是让reloadData()加载的数据异步更新到main thread上。不然tableView数据只会在后台准备好,下一次按button才会显示。

  • 相关阅读:
    Python模块笔记
    js日期
    js字符串
    js數字
    js對象構造
    js 錯誤
    js break和continue
    js條件結構和循環結構
    js運算符
    js函數
  • 原文地址:https://www.cnblogs.com/guozai9527/p/6373055.html
Copyright © 2011-2022 走看看