【发布时间】:2020-06-18 07:16:08
【问题描述】:
所以我在我的应用程序中使用了Observer 模式,以便在另一个类中获得更改通知,而无需查找它们。
我有一个扩展Observable 的Singleton 类。在这个类中,我有 两个 CountDownTimer 类型变量。每个都包含两个方法:onTick() 和 onFinished()。
为了简单起见,我们将这些计时器称为 A 和 B。
每次调用A.onTick()、A.onFinished()、B.onTick()、B.onFinished() 时,我必须调用notifyObservers() 以通知我的Observer 发生了一些变化。
直到这里一切正常。问题是我知道有些东西发生了变化,但我不知道到底发生了什么变化。根据通知我的是哪一个,我必须在Observer 端执行一些代码。
我怎么知道这些方法中的哪一个通知了我?
【问题讨论】:
-
Observer/Observable 有其局限性。我建议您创建自己的实现
-
请向我们展示课程...所有三个课程(
Observerss 和Observable,可能会将它们缩短到重要部分)。
标签: java android observable observer-pattern observers