Swift 3.0 延迟加载的几种实现方法

来源:互联网 发布:icp备案查询源码 编辑:程序博客网 时间:2024/05/21 20:24

最近在用Swift开发项目,其中用到延迟加载,顺便整理了下3.0改版之后的延迟加载实现方法。

可以用4种方式实现延迟加载,下面就一一介绍

1.使用perform方式,代码如下

perform(#selector(scrollViewDidEndDecelerating), with:self, afterDelay:0.4)


2.使用GCD方式,代码如下

        DispatchQueue.main.asyncAfter(deadline:DispatchTime.now()+0.4) {

            self.scrollViewDidEndDecelerating(self.adScrollView)

        }

3.使用定时器方式,代码如下

Timer.scheduledTimer(timeInterval:0.4, target: self, selector:#selector(scrollViewDidEndDecelerating), userInfo:nil, repeats: false)


4.使用最原始线程方式,代码如下

        let thread:Thread =Thread {

            Thread.sleep(forTimeInterval:0.4)

            self.scrollViewDidEndDecelerating(self.adScrollView)

        }

        thread.start()

Swift 3.0 和之前的书写风格还是有很大不同的,小弟也在学习摸索中,希望和大家共同进步
0 0