2016-11-03 4 views
0

У меня есть приложение Xamarin iOS, в котором я использую MVVMCross v3.2.1 для управления навигацией между контроллерами/представлениями. Я использовал метод ShowViewModel<TViewModel>(); для навигации между моделями просмотра и имел специальный случай, когда я хочу перейти на один шаг в стеке навигации.MVVMCross back navigation с MvxClosePresentationHint

Я могу сделать это с помощью MvxClosePresentationHint, как в ChangePresentation(new MvxClosePresentationHint(this));, но когда он перейдет к предыдущему виду, мне нужны данные для обновления.

Есть ли какие-либо методы жизненного цикла модели MVVMCross? Могу ли мы обнаружить обратную навигацию или мне нужно выполнить MvxMessage?

+2

Не запускается метод Init? В противном случае вы можете создать метод, который вы запускаете из ViewDidAppear. – Cheesebaron

+0

Метод init не был первым в навигации, но я применил метод обновления ViewDidAppear, как вы предложили. Симуляция для решения проблемы, но мне нужно убедиться, что обновление данных не вызвано ненужным. Спасибо за совет. –

ответ

0

Как предложил Cheesebaron, я обновляю данные ViewWillAppear на предыдущем ViewController, который, похоже, решил проблему.

public override void ViewWillAppear(bool animated) 
{ 
    base.ViewWillAppear(animated); 
    Refresh(); 
}