gpt4 book ai didi

android - 从 Observable 获取元素的索引

转载 作者:行者123 更新时间:2023-11-29 00:10:13 25 4
gpt4 key购买 nike

我开始学习 RxJava。我有一个 View 数组,我想使用 ViewObservable.clicks() 为每个 View 设置一个 OnClickListenerOnClickListener 的实现将只调用一个方法,该方法取决于 View 在数组中的位置(例如:populate(viewPositionInTheArray))。

一个必要的解决方案是这个:

for (int i = 0; i < views.length; i++) {
final int finalI = i;
view[i].setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
populate(finalI);
}
});
}

为了使用 RxJava 做到这一点,我想我需要做一些流链接。但是,我不知道我必须以优雅的 FRP 方式使用哪些功能。有什么建议吗?

谢谢

最佳答案

这是我的尝试。当我需要通过可观察的变化来维护索引时,我通常使用范围运算符

 Observable.range(0,views.length)
.subscribe(new Action1<Integer>() {
@Override
public void call(Integer integer) {
views[index].setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
populate(index);
}
});
}
});

关于android - 从 Observable 获取元素的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30835677/

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