Property Observers

Property Observers tức là theo dõi sự thay đổi của thuộc tính.

var myProperty = 5 {
willSet {
  print("Giá trị mới là \(newValue). Giá trị cũ là \(myProperty)")
}
didSet {
  print("Giá trị mới \(myProperty). Giá trị cũ là \(oldValue)")
} }
myProperty = 6
// prints: Will set to 6, It was previously 5
// prints: Did set to 6. It was previously 5
  • willSet được gọi Trước myProperty thay đổi giá trị. Giá trị mới là newValue, giá trị cũ là myProperty.
  • didSet được gọi Sau myProperty thay đổi giá trị. Giá trị cũ là oldValue và giá trị mới là  myProperty .
var myMoney = 0 {
willSet {
  if ( myMoney < 0 ) {
    print( "Bạn chỉ có \(newValue) $. Không đủ để thanh toán!" )
  }
}
didSet {
  if ( myMoney > 0 && myMoney < 100 ) {
    print( "Bạn có \(myMoney) $. Đủ để thanh toán!" )
  }
}
  • Như ví dụ trên: mình đã dùng newValue trong willSet. Nhờ vậy mà bạn không phải thay đổi UI mỗi lần dữ liệu thay đổi mà chỉ cần thay đổi biến myMoney như trên.

 

Rate this post

You May Also Like

About the Author:

Leave a Reply

Your email address will not be published. Required fields are marked *