Ios 如何继承PHAsset类并添加属性
AssetGridModel继承PHAsset类并添加isSelected属性Ios 如何继承PHAsset类并添加属性,ios,swift,Ios,Swift,AssetGridModel继承PHAsset类并添加isSelected属性 fileprivate var fetchResult: [AssetGridModel]! let allPhotosOptions = PHFetchOptions() allPhotosOptions.sortDescriptors = [NSSortDescriptor(key: "creationDate", ascending: false)] let fetchAsse
fileprivate var fetchResult: [AssetGridModel]!
let allPhotosOptions = PHFetchOptions()
allPhotosOptions.sortDescriptors = [NSSortDescriptor(key: "creationDate", ascending: false)]
let fetchAssets = PHAsset.fetchAssets(with: allPhotosOptions)
或
为什么我出来的类型都是PHAsset,不是我写的继承类,也不能更改我添加的属性
请告诉我,谢谢你使用运行时解决它
extension PHAsset {
struct RuntimeKey {
static var isSelectedKey = UnsafeRawPointer.init(bitPattern: "isSelectedKey".hashValue)
}
var isSelectedImage: Bool? {
set {
objc_setAssociatedObject(self, PHAsset.RuntimeKey.isSelectedKey, newValue, .OBJC_ASSOCIATION_COPY_NONATOMIC)
}
get {
return objc_getAssociatedObject(self, PHAsset.RuntimeKey.isSelectedKey) as? Bool
}
}
}
extension PHAsset {
struct RuntimeKey {
static var isSelectedKey = UnsafeRawPointer.init(bitPattern: "isSelectedKey".hashValue)
}
var isSelectedImage: Bool? {
set {
objc_setAssociatedObject(self, PHAsset.RuntimeKey.isSelectedKey, newValue, .OBJC_ASSOCIATION_COPY_NONATOMIC)
}
get {
return objc_getAssociatedObject(self, PHAsset.RuntimeKey.isSelectedKey) as? Bool
}
}
}