В Руководстве по архитектуре приложения от Google есть пример, который я не понимаю -
UserProfileViewModel:
public class UserProfileViewModel extends ViewModel {
private LiveData<User> user;
public LiveData<User> getUser() {
return user;
}
}
UserProfileFragment:
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
viewModel.getUser().observe(this, user -> {
// Update UI.
});
}
Когда я смотрю на ссылку LiveData , существует только следующий метод observe
:
observe(LifecycleOwner owner, Observer<T> observer)
Я запутался, что подпись метода не совпадает:
LifecycleOwner
- это библиотека поддержки Fragment
, хорошо.
Но как выражение user-> { some code }
может быть Наблюдатель объект?