我注意到 RxSwift 减慢了应用程序的速度,我不知道这是我的错还是框架的错。
我在 UICollectionViewCell 的自定义类中进行了绑定,该类是为配置单元格而触发的。例如这部分代码:
viewModel.observableIsHighlighted.asDriver().drive(onNext: { isHighlighted in
// do nothing
}).disposed(by: disposeBag)
viewModel.observableIsMarked.asDriver().drive(onNext: { isMarked in
// do nothing
}).disposed(by: disposeBag)
where observableIsHighlighted
, observableIsMarked
are justBehaviorRelay<Bool>
大约需要 16-20 毫秒,这对于 UICollectionView 当然是不可接受的。
另一部分是这样的:
imageViewTapGestureRecognizer.rx.event.bind(onNext: { _ in
// do nothing
}).disposed(by: disposeBag)
大约需要 12 毫秒。
问题
我的方法有问题还是 RxSwift 中的绑定对于像这样的视图不准确UICollectionView
?
当然,我假设 RxSwift 中的绑定正是针对UICollectionView
.
编辑
我如何测量时间?
我用CACurrentMediaTime()
乘以1000
。我知道这是最好的方法,但是非常简单的方法总是需要 0 毫秒,因此建议应该改进 10-20 毫秒的方法。