我有两个实时数据。一个用于美元,另一个用于欧元。我想更改一个值来更改另一个值,反之亦然。
然而,只要他们都观察并改变彼此的价值,这似乎是不可能的,因为使这个过程成为无限循环,导致应用程序崩溃。
假设我有 Livedata A 和 Livedata B。
如果我改变 A 的值,A 的观察者会改变 B 的值,然后 B 的观察者会再次改变 A 的值,依此类推。
这正是我想要的。一个值会改变另一个值,但不会进入无限循环。我想通过 Livedata 来实现这一目标。对此有什么建议吗?或任何其他不同的方法也受欢迎。
提前致谢。
每种货币可以有两个变量。
兑换的美元观察LiveData Euro,而兑换的欧元观察LiveData USD。
美元和欧元的LiveData均用于用户输入。如果用户在 EditText 上输入一个值,它将被视为相应 LiveData(美元或欧元)的输入。
交换的值显示为 EditText 的提示文本。
因此,LiveData 及其观察者可以是单向过程。