通过意图启动 activity 后未调用 Viewmodel Initialize()

Viewmodel Initialize() not called after starting activity via intent

我需要显示 viewmodel/view 没有以前的导航堆栈等。szenario 是一个注销,它重定向到一个新的登录视图。
为此,我尝试使用 ActivityFlags.ClearTask 和 ActivityFlags.NewTask 启动一个新的 activity 以重置导航等。我的 viewpresenter 继承自 MvxAppCompatViewPresenter,从viewmodel-request,添加所需的 activity 标志并启动它。

activity 和相关的视图模型已创建并导航到,但从未调用视图模型上的 Initialize() 方法。
项目目前使用mvvmcross 5.4.2

示例代码:

var intent = base.CreateIntentForRequest(request);
intent.SetFlags(ActivityFlags.ClearTask | ActivityFlags.NewTask);

base.ShowIntent(intent);

我做错了什么?

Initialize 方法仅在使用 MvxNavigationService 直到 MvvmCross 5.5 时被调用。要么更新到它以修复它,要么使用 MvxNavigationService.

文档中有更多信息。 https://www.mvvmcross.com/documentation/fundamentals/viewmodel-lifecycle#tombstoning-saving-and-restoring-the-viewmodels-state