2016-11-03 45 views
0

我有一個Xamarin iOS應用程序,我使用MVVMCross v3.2.1來控制視圖控制器/視圖模型之間的導航。我已經使用ShowViewModel<TViewModel>();方法在視圖模型之間導航,並且有一個特殊情況,我想在導航堆棧上導航一步。MVVMCross回導航與MvxClosePresentationHint

我可以這樣做,我使用MvxClosePresentationHint,如ChangePresentation(new MvxClosePresentationHint(this));,但是當它導航回到先前的視圖時,我需要刷新數據。

是否有任何MVVMCross視圖模型生命週期方法我可以檢測回導航,或者我應該實現一個MvxMessage?

+2

Init方法不觸發嗎?否則,您可以創建一個從ViewDidAppear觸發的方法。 – Cheesebaron

+0

init方法並沒有在導航中第一次,但我實現了ViewDidAppear的刷新方法,正如你所建議的。用Seam來解決問題,但我需要確保數據刷新不會被不必要地調用。謝謝你的提示。 –

回答

0

由於Cheesebaron建議我刷新ViewWillAppear中的數據,這些數據似乎解決了這個問題。

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