美文网首页
iOS子线程更新UI到主线程的三种方法

iOS子线程更新UI到主线程的三种方法

作者: SDBridge | 来源:发表于2018-05-20 21:37 被阅读2632次

    今天做了一个离线下载的功能,需要在子线程获取到进度然后传到主线程去更新UI,

    方法1,2,不好使,当下载结束了才去执行,因为实在内网环境非常的快, 如果是在外网环境就可以使用,我觉得这是苹果API的Bug,

    最终使用了3,看清楚哦,是同步

    dispatch_sync

    // 1.NSThread[self performSelectorOnMainThread:@selector(updateUI) withObject:nil waitUntilDone:NO];

    - (void)updateUI {

        // UI更新代码    self.alert.text = @"Thanks!";

    }// 2.NSOperationQueue[[NSOperationQueue mainQueue] addOperationWithBlock:^{

        // UI更新代码    self.alert.text = @"Thanks!";

        }];// 3.GCDdispatch_sync(dispatch_get_main_queue(), ^{

      // UI更新代码  self.alert.text = @"Thanks!";

    });

    相关文章

      网友评论

          本文标题:iOS子线程更新UI到主线程的三种方法

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