iOS swift 懒加载的使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS swift 懒加载的使用相关的知识,希望对你有一定的参考价值。

参考技术A 记录一下swift的懒加载 

OC回顾懒加载

- (UIButton *)but

if (!_but)

_but = [UIButton buttonWithType:UIButtonTypeCustom];

[_but setTitle:@"宝贝" forState:UIControlStateNormal];



return _but;



下面来看swift怎么创建懒加载用到关键字lazy

swift有两种加载方法

第一种方式

lazy var butt = UIButton()

第二种方式可以设置更多的属性

lazy var but:UIButton =

let but =UIButton()

but.setTitle("按钮", for: .normal)

return but

()

override func viewDidLoad()

super.viewDidLoad()

// Do any additional setup after loading the view.

print(but)



总结:用到的时候再加载,多次用到只加载一次,swift里用lazy关键字创建懒加载

链接:https://www.jianshu.com/p/ad394463b7a2

20.Swift懒加载lazy



    // Swift懒加载使用lazy关键字来修饰属性

    // 在属性后面跟= {}进行具体的赋值

    // 只会被加载一次

    lazy var names : [String]? = {

        // () -> ([String]) in

        print("加载数据")

        return ["why", "lnj", "lmj"]

    }()

    

    override func viewDidLoad() {

        super.viewDidLoad()

    }


    override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {

        print(names);

        print(names);

        print(names);

        print(names);

    }


以上是关于iOS swift 懒加载的使用的主要内容,如果未能解决你的问题,请参考以下文章

swift学习第十六天:懒加载和tableView

Swift 懒加载

Swift 懒加载

Swift-懒加载使用

20.Swift懒加载lazy

Swift学习(4懒加载计算型属性反射机制)