在通过intent

时间:2017-11-30 10:46:00

标签: c# android xamarin android-intent mvvmcross

我需要显示一个viewmodel / view而不使用之前的导航堆栈等.szenario是一个注销,它会重定向到一个新的loginview。
为此,我尝试使用ActivityFlags.ClearTask和ActivityFlags.NewTask启动一个新活动来重置导航等。我的viewpresenter继承自MvxAppCompatViewPresenter,从viewmodel-request创建Intent,添加所需的活动标志并启动它。

创建活动和相关的viewmodel并导航到,但是从不调用viewmmodel上的Initialize() - 方法。
该项目目前使用mvvmcross 5.4.2。

示例代码:

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

base.ShowIntent(intent);

我做错了什么?

1 个答案:

答案 0 :(得分:0)

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

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