我已经开始使用事件总线库Otto来更新我的 Android 应用程序中不同组件的界面(活动)。例如,当对模型类进行更改时,我将发布到事件总线,或者如果AsyncTask
已经完成,我将事件发布到方法中的事件总线onPostExecute
。
到目前为止,我正在使用一个事件总线进行用户界面更新。我注意到即使是暂停的活动也会收到这些事件。在文档中它指出
暂停的活动不接收用户输入并且不能执行任何代码。
我觉得有争议,我只能解释这一点,这段代码当然是在不同的线程上执行的,但仍在活动中。
我的问题是,这种用法会导致任何缺点吗?暂停多个活动、执行事件、更新(暂停)活动的元素或忽略它们。这会导致明显的开销还是我可以忽略它?
当一个人想要使用事件总线来更新界面时,是否有不同的方法?