Maybe fixed something

This commit is contained in:
foyoodo 2022-08-31 15:04:11 +08:00 committed by Feng
parent 6050227b67
commit a3c3d9c889

View File

@ -12,7 +12,7 @@ import UIKit
private var prepareForReuseBag: Int8 = 0
@objc public protocol Reusable: class {
@objc public protocol Reusable: AnyObject {
func prepareForReuse()
}
@ -21,10 +21,6 @@ extension UITableViewHeaderFooterView: Reusable {}
extension UICollectionReusableView: Reusable {}
extension Reactive where Base: Reusable {
var prepareForReuse: Observable<Void> {
return Observable.of(sentMessage(#selector(Base.prepareForReuse)).map { _ in }, deallocated).merge()
}
var reuseBag: DisposeBag {
MainScheduler.ensureExecutingOnScheduler()
@ -36,6 +32,7 @@ extension Reactive where Base: Reusable {
objc_setAssociatedObject(base, &prepareForReuseBag, bag, objc_AssociationPolicy.OBJC_ASSOCIATION_RETAIN)
_ = sentMessage(#selector(Base.prepareForReuse))
.take(until: deallocated)
.subscribe(onNext: { [weak base] _ in
guard let strongBase = base else {
return