首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >android: kotlin flow multiple events

android: kotlin flow multiple events
EN

Stack Overflow用户
提问于 2020-02-21 11:23:06
回答 1查看 1.2K关注 0票数 1

我在我的应用程序中使用了flow,但是我在使用distinct的时候遇到了一些问题,或者在没有它的情况下使用了8/9次。我使用livedata作为数据绑定的流。

xml

代码语言:javascript
复制
            <com.google.android.material.textfield.TextInputEditText
                android:id="@+id/amount_edit"
                isFocused="@={viewModel.amountFocused}"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:inputType="numberSigned"
                android:maxLines="1"
                android:text="@={viewModel.amount}" />

代码

代码语言:javascript
复制
private val amountFlow = amount.asFlow().mapLatest {
    Timber.d("FLOW : amountFlow ${it}")
    if (it != null && it.length >= MIN_QUERY_LENGTH) {
        it.toIntOrNull()
    } else {
        null
    }
}.distinctUntilChanged()

使用distinctUntilChanged()调用此调试语句两次,或者在不使用它的情况下调用8-9次。我真的不知道为什么,但这个流程正在与另一个流程结合,它调用了我的另一种逻辑方式。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-27 22:58:12

几天前我自己解决了这个问题。在我的代码中,我多次将组合流转换为实时数据,因为不同的事情导致了这个问题。通过使所有流重新运行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60331756

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档