1. 程式人生 > >類擴充套件, 新增屬性

類擴充套件, 新增屬性

類擴充套件, 為類新增屬性

  • 如程式碼所示, 建立屬性, 並實現set和get方法
  • 利用OC的runtime特性
private var kHJRefreshHeaderKey: String = ""
/// header
    var hj_header: HJRefreshHeaderView? {
        get {
            return (objc_getAssociatedObject(self, &kHJRefreshHeaderKey) as? HJRefreshHeaderView)
        }
        set(newValue) {
            objc_setAssociatedObject(self, &kHJRefreshHeaderKey, newValue, objc_AssociationPolicy.OBJC_ASSOCIATION_RETAIN)
        }
    }