美文网首页
父视图刷新子视图tableView

父视图刷新子视图tableView

作者: LimChihi | 来源:发表于2016-09-22 17:51 被阅读118次

    在父视图里面点击按钮弹出一个子视图里面有一个tableView
    并打算在父视图是刷新子视图的tableView,但一开始无论如何都是崩,因为一个nil

    后来以为是tableView没有创建好,阻塞了一下线程再刷新也不行。

    let workQueue = dispatch_queue_create("stop", nil)
     dispatch_async(workQueue, {
        NSThread.sleepForTimeInterval(0.01)
        dispatch_async(dispatch_get_main_queue(), {
            self.tableView.reloadData()
        })
    })
    

    目前只能曲线救国,用一个不断自动刷新tableView的方法来实现自动刷新

    func realoadTableViewData() {
        let workQueue = dispatch_queue_create("stop", nil)
        dispatch_async(workQueue, {
        NSThread.sleepForTimeInterval(0.5)
        dispatch_async(dispatch_get_main_queue(), {
            self.tableView.reloadData()
            if self.shouldBreakRealoadTableView {
                return
            }else {
                self.realoadTableViewData()
            }
            })
        })     
    }
    

    应该设定一个Bool值来判断是不是能继续递归调用该方法,该值在退出子视图哦或者选定了一个cell后应设一个true

    想到比较好的方法再来更新

    相关文章

      网友评论

          本文标题:父视图刷新子视图tableView

          本文链接:https://www.haomeiwen.com/subject/tsizettx.html