17.swift怎麼監聽該屬性的改變

import UIKit


class Person : NSObject {

    var name : String? {

        // 可以給newValue自定義名稱

        willSet (new){ // 屬性即將改變,還未改變時會調用的方法

            // 在該方法中有一個默認的系統屬性newValue,用於存儲新值

            print(name)

            print(new)

        }

        // 可以給oldValue自定義名稱

        didSet (old) { // 屬性值已經改變了,會調用的方法

            // 在該方法中有一個默認的系統屬性oldValue,用於存儲舊值

            print(name)

            print(old)

        }

    }

    var age : Int = 0

    var height : Double = 0.0

}


let p : Person = Person()


// 在賦值時,監聽該屬性的改變

// OC中是通過重寫set方法

// swift,可以給屬性添加監聽器

p.name = "why"


//p.name = "yz"


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章