Sử dụng Closure để khởi tạo biến trong Swift

Sử dụng Closure để khởi tạo biến trong Swift

Hôm nay mình sẽ giới thiệu với các bạn một cách khởi tạo biến mới đó là sử dụng Closure. Mình thường dùng cách này để khởi tạo các UIControl bằng code để cho tường minh và dễ quản lý.

1. Cách khởi tạo

Ví dụ ở đây mình khởi tạo một UIView và các thuộc tính:

2. Mở rộng

Ngoài chúng ta có thể custom 1 Closure riêng cho việc config đó, ta sẽ khai báo 1 protocol SetupConfig và tạo 1 func có chức năng config động cho đối tượng đó.

Và đây là cách sử dụng:

private let viewCustom = UIView().withConfig { (view) in
    view.frame = CGRect(x: 0, y: 0, width: 100, height: 100)
    view.backgroundColor = .red
}

Chúng ta có thể config cho đối tượng bất kể khi nào sau khi đã tạo instance.

let viewCustom3 = UIView()
viewCustom3.withConfig { (view3) in
    view3.frame = CGRect(x: 0, y: 250, width: 100, height: 100)
    view3.backgroundColor = .yellow
}

Bằng cách sử dụng Closure code sẽ trở nên gọn gàng, dễ hiểu hơn và rất tiện lợi khi sử dụng. Phù hợp với trường hợp chúng ta tạo UIControl bằng code thuần.

Đây là source code:

Còn đây là kết quả của đoạn code trên:

Kết quả
Kết quả

Cám ơn các bạn đã theo dõi bài viết.