Я использую интерфейс Notifications
для обновления фрагментов при каждом изменении данных.Android: Когда регистрироваться и регистрироваться для уведомлений?
public interface Notifications {
void register(ID id, Listener listener);
void unregister(ID id, Listener listener);
<T> void post(ID id, T value);
interface Listener<T> {
void onEvent(ID id, T value);
}
enum ID {
CustomersUpdated,
ProductsUpdated
}
}
касаемо Android Lifecycle, что лучший момент для регистрации и отмены регистрации для получения уведомлений?
Вот несколько сценариев:
Сценарий 1:
public class ProductsListFragment extends BaseFragment
implements Notifications.Listener {
@Override
public void onStart() {
mAdapter.notifyDataChanged();
register(Notifications.ID.ProductsUpdated, this)
super.onStart();
}
@Override
public void onStop() {
unregister(Notifications.ID.ProductsUpdated, this)
super.onStop();
}
@Override
public void onEvent(Notifications.ID id, Object value) {
mAdapter.notifyDataChanged();
}
Сценарий 2:
public class ProductsListFragment extends BaseFragment
implements Notifications.Listener {
@Override
public void onResume() {
mAdapter.notifyDataChanged();
register(Notifications.ID.ProductsUpdated, this)
super.onResume();
}
@Override
public void onPause() {
unregister(Notifications.ID.ProductsUpdated, this)
super.onPause();
}
@Override
public void onEvent(Notifications.ID id, Object value) {
mAdapter.notifyDataChanged();
}
Пожалуйста, объясните почему вы бы предложил использовать один или другие i дополнение или другое!
Почему бы вам не зарегистрироваться и не регистрироваться в вашем классе приложений? –