[英]Understanding retain cycles in RxSwift
如果我有以下代碼
func handle(showEmptyView: Driver<Bool>) {
showEmptyView
.drive(onNext: setEmptyViewShown)
.disposed(by: disposeBag)
}
func setEmptyViewShown(_ show: Bool) {
tableView.isHidden = !show
emptyView.isHidden = show
}
當我調用setEmptyViewShown
因為我不使用weak
或unowned
的自我時,這是一個保留周期嗎?
是的,有一個保留周期,因為setEmptyViewShown(_:)
是一種將self
作為隱式第一個參數的方法。
更好的是:
disposeBag.insert(
showEmptyView.bind(to: emptyView.rx.isHidden),
showEmptyView.map { !$0 }.bind(to: tableView.rx.isHidden)
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.