我正在设计一个Button
的子类,预计会不时更新(具体来说,只要收到特定的Broadcasts
)。如果我在Activity
的上下文中工作,我会在onResume
中附加广播接收器,并将它们分开到onPause
。但是,视图不会收到这些事件,如果我附加一个监听器/接收器,我不确定如果包含活动处于“暂停”状态,我是否能够更新UI - 同样,我当没有必要时,我不想让听众保持联系。
所以我的问题是,在派生视图中,这是监视外部事件(通过监听器或广播)的最佳方式?
答案 0 :(得分:2)
我正在做类似的事情,我已经将TextView
子类化了。我的结构使我的所有数据都在活动中收到,处理完毕,然后发送到TextView
。
我用来发送数据的结构类似于Observable/Observer pattern
。我的update()
中有一个TextView
方法可以调用,然后更新文本。我有List
TextViews
我迭代并在收到数据时为每个update()
调用TextViews
。为了区分Socket
,我在实例化时分配了一个静态ID变量。
我认为在你的情况下可以做类似的事情。我正在通过{{1}}接收JSON数据,因此它应该适用于广播。