【发布时间】:2016-03-04 23:25:42
【问题描述】:
我正在尝试学习一些 RxJava 和 RxAndroid,我认为我遇到的问题可以使用这样的工具轻松解决。这是问题所在: 我们可以在一个活动中拥有“N”个视图,每个视图都用于满足某些条件。当用户按下“保存”时,我们要检查所有视图中是否满足所有条件,如果不满足,请用户分别确认每个条件。 所以这里是我将如何处理这个问题的示例没有 RxJava:
private void validation(List<CustomView> views)
{
for (CustomView view : views)
{
if (view.metCondition() == false)
{
showConfirmationDialog(view);
return false;
}
}
return true;
}
private void showConfirmationDialog(CustomView view)
{
ConfirmationDialog dialog = new ConfirmationDialog(this, view);
dialog.show();
}
private void dialogResult(CustomView view)
{
view.setCondition(true);
validation(mViews);
}
显然,我会为确认结果设置某种侦听器,并且在确认条件后(使用 OK 或 Cancel),“view.metCondition()”将设置为 true,因此它不会再次弹出该视图。当然,在“验证”返回 true 之后,它会运行“Save()”函数。
这真的是我真正的解决方案的粗略展示,因为我希望它尽可能简单,所以如果你知道如何使用 RxJava 完成这样的事情,请发表评论。我已经将这个库用于一些异步的东西(与 USB 连接的设备交谈),所以我知道一些东西,但从来不知道如何像这样链接调用。
非常感谢任何帮助。
编辑
添加了监听方法,这样我们就可以看到“validate()”函数被再次调用了
【问题讨论】:
标签: android rx-java rx-android