gpt4 book ai didi

android - RxJava/RxBinding - 检查订阅是否存在

转载 作者:太空宇宙 更新时间:2023-11-03 13:46:51 24 4
gpt4 key购买 nike

我正在使用 RxBinding 并在 RecyclerView 适配器中的 onBindViewHolder 方法中创建一个订阅,它会重用项目。有什么简单的方法可以检查我是否已将订阅者分配给 EditText 对象,如果是,则删除该订阅?

我的代码是这样的

public void onBindViewHolder(final ItemViewHolder holder, int position) {

holder.text.setText(mProvider.get(position).text);
Subscription textSub = RxTextView.textChanges(holder.text).subscribe(new Action1<CharSequence>() {
@Override
public void call(CharSequence charSequence) {
...
}
});
subscriptions.add(textSub);
}

最佳答案

Is there anyway to check if I already assigned subscriber to an EditText object and if so delete that subscription?

您可以将其保留为类(class)成员。例如

Subscription textSub = Subscriptions.unsubscribed(); 

然后

public void onBindViewHolder(final ItemViewHolder holder, final int position) {

holder.text.setText(mProvider.get(position).text);
textSub.unsubscribe();
textSub = RxTextView.textChanges(holder.text).subscribe(new Action1<CharSequence>() {
@Override
public void call(CharSequence charSequence) {
...
}
});
}

关于android - RxJava/RxBinding - 检查订阅是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40503590/

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