gpt4 book ai didi

android - RxView.clicks(view).subscribe 与 view.setOnClickListener

转载 作者:行者123 更新时间:2023-11-29 18:26:41 24 4
gpt4 key购买 nike

使用 RxView.clicks(view).subscribe 而不是普通的 view.setOnClickListener 有什么好处?

最佳答案

使用 RxView 可以有很多有用的用例。

setOnClickListener 仅在用户单击 View 时发出通知。

但是 RxView 可以处理此 UI 操作并在输入时执行许多 Rx-Java 有用的方法。

例如:

如果不耐烦的用户快速多次单击按钮,并且此单击调用一些长时间运行的操作,这将是问题所在,对吗?

使用 RxView,您可以轻松地在处理这些点击之间添加一些暂停。这将非常有用:

RxView.clicks(mSearchBtn)
.throttleFirst(2, TimeUnit.SECONDS)
.subscribe(s -> {
// perform some actions
});

或者如果您执行了一些网络调用并且不想中止它:

boolean isRequestSended = true;
RxView.clicks(mSearchBtn)
.skipWhile(new Predicate<Object>() {
@Override
public boolean test(Object o) throws Exception {
return isRequestSended
}
})
.subscribe(s -> {
// isRequestSended = false
});

还有许多其他示例。

您可以在 this post 中查看许多用例

关于android - RxView.clicks(view).subscribe 与 view.setOnClickListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58547091/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com