Não ficou bem explicado o porque se fazer unsubscribe, sobrescrevendo o OnDisappearing
Tambem fiquei na duvida de como o MessagingCenter funciona na navegação, ficou muita vaga a explicação.....
Não ficou bem explicado o porque se fazer unsubscribe, sobrescrevendo o OnDisappearing
Tambem fiquei na duvida de como o MessagingCenter funciona na navegação, ficou muita vaga a explicação.....
Olá, Maurício
Usamos unsubscribe para "cancelar a assinatura" anterior da mensagem, se ela existir. Caso contrário, podemos mais de uma assinatura para o mesmo evento, e isso faz com que o método seja disparado duas ou mais vezes quando o evento ocorre.
Sobre o MessagingCenter
: ele permite que as mensagens sejam passadas sem que seja necessário o acoplamento entre os componentes. Por exemplo: Uma ViewModel dispara um evento, e uma mensagem é enviada para o MessagingCenter
. Essa ViewModel só se preocupou em lançar a mensagem, e ignora quem irá recebê-la. Por outro lado, o code behind de uma página do Xamarin assinou a mesma mensagem, então esse code behind irá executar o procedimento adequado, mas sem saber quem disparou o evento. Ambos os componentes (ViewModel e code behind da Página) podem assim se comunicar sem necessariamente se conhecer. Isso é o baixo acoplamento, que é propiciado pelo MessagingCenter
.