在iOS中,当视图控制器消失时,删除侦听器是一种很好的做法。那么,在安卓的世界里,它是一样的吗?我应该删除活动的onPause()
中的所有侦听器吗
如果我们谈论的是好的实践,那么首先就不应该在Activity
中有听众。每当发生配置更改(例如屏幕旋转(时,Activity
将调用onPause
、onStop
、onDestroy
、onCreate
、onStart
、onResume
。如果您的侦听器在Activity
中,则在配置更改时重建ui的时间将比需要的时间长得多。对于这个问题,Google自己的解决方案是架构组件库中的ViewModel
。侦听器应该在您的ViewModel
中,甚至可能是从ViewModel
调用的Repository
中。所有这些都在提供的链接中进行了更详细的解释。