目前,我想将 的值绑定Observable<UIViewController>
到我的UIPageViewController
. 最初的想法简单明了:
viewControllerObservable
.subscribe(onNext: { [weak self] viewController in
self?.pageVC.setViewControllers([viewController],
direction: .forward,
animated: false,
completion: nil)
})
.disposed(by: disposeBag)
但是如果 viewControllerObservable 中的值变化太快,页面视图控制器会在完成添加前一个视图控制器之前收到新的 set 命令,我得到NSInternalInconsistencyException
.
我可以使用 使该代码更具“反应性” Binder
,但我仍然会面临同样的问题。
这里很明显的方法是使用油门,但它似乎是很脏的修复,掩盖问题,而不是修复它。
理想情况下,我需要一些方法来处理进一步的值处理,直到completion
被调用setViewControllers
。
我怎样才能做到这一点?