美文网首页
父视图刷新子视图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