Wpis z mikrobloga

#programowanie #java #android #wzorce #mvp

Po lekturze artykułu z tej strony postanowiłem zastosować w swojej aplikacji wzorzec MVP. Założenia mniej więcej rozumiem i wydaje się to być ciekawym rozwiązaniem. Jednak natrafiłem na pewien problem.

Otóż jak rozwiązać komunikację pomiędzy prezenterami?

Przykładowo:

Mam MainActivity, które posiada przyciski służące do zmiany fragmentów w FrameLayout w tym samym layoucie.

MainActivity implementuje widok, który przekazywany jest do prezentera(MainPresenter). Prezenter po otrzymaniu sygnału od widoku o naciśnięciu przycisku podmienia w widoku fragment. Każdy fragment również jest widokiem i ma swojego prezentera(np FragmentPresenter). Na tę chwilę inicjuję prezenterów w widokach. Co w przypadku jeżeli jeden fragment zażyczy sobie zmiany fragmentu w MainActivity na inny?

Czy prawidłowym rozwiązaniem będzie wykorzystanie np. EventBusa? FragmentPresenter wysyła sygnał do MainPresenter. Czy nie jest tu problemem, że FragmentPresenter jest zależny od MainPresenter? Nie łamie to jakichś zasad o których jeszcze nie wiem?
  • 2