Xamarin Android在视图之间传递数据

Xamarin Android在视图之间传递数据,android,xamarin.android,mvvmcross,Android,Xamarin.android,Mvvmcross,我是Xamarin Android的新手。我希望创建一个多步骤注册表,即向导流程。 我正在寻找一种方法的最佳实践,这种方法可以保存每个步骤状态,以便构建模型,然后提交模型(构建器设计模式) 我不知道在转到另一个视图时如何保存状态。根据研究,我会通过调用PutExtra传递数据来传递视图模型作为意图的一部分吗? 我不确定做这件事的好方法是什么。我正在使用MVVMCross构建viewmodel。我希望社区能在正确的方向上帮助我,请在MvvmCross中,您不需要在视图之间传递数据,但所有导航都是在

我是Xamarin Android的新手。我希望创建一个多步骤注册表,即向导流程。 我正在寻找一种方法的最佳实践,这种方法可以保存每个步骤状态,以便构建模型,然后提交模型(构建器设计模式) 我不知道在转到另一个视图时如何保存状态。根据研究,我会通过调用PutExtra传递数据来传递视图模型作为意图的一部分吗?

我不确定做这件事的好方法是什么。我正在使用MVVMCross构建viewmodel。我希望社区能在正确的方向上帮助我,请

在MvvmCross中,您不需要在视图之间传递数据,但所有导航都是在视图模型之间完成的。有关这方面的详细文档,请访问:

例如:

public class MyViewModel : MvxViewModel
{
    private readonly IMvxNavigationService _navigationService;
    public MyViewModel(IMvxNavigationService navigationService)
    {
        _navigationService = navigationService;
    }

    public override void Prepare()
    {
        //Do anything before navigating to the view
    }

    public async Task SomeMethod()
    {
        await _navigationService.Navigate<NextViewModel, MyObject>(new MyObject());
    }
}

public class NextViewModel : MvxViewModel<MyObject>
{
    public override void Prepare(MyObject parameter)
    {
        //Do anything before navigating to the view
        //Save the parameter to a property if you want to use it later
    }

    public override async Task Initialize()
    {
        //Do heavy work and data loading here
    }
}
公共类MyViewModel:MvxViewModel
{
专用只读IMvxNavigationService\u navigationService;
公共MyViewModel(IMvxNavigationService导航服务)
{
_导航服务=导航服务;
}
公共覆盖无效准备()
{
//在导航到视图之前执行任何操作
}
公共异步任务方法()
{
wait_navigationService.Navigate(新建MyObject());
}
}
公共类NextViewModel:MvxViewModel
{
公共覆盖无效准备(MyObject参数)
{
//在导航到视图之前执行任何操作
//如果以后要使用该参数,请将其保存到属性中
}
公共重写异步任务初始化()
{
//在这里进行繁重的工作和数据加载
}
}

传递每个步骤(即注册向导)数据的最佳方式是什么?在注册向导中,每个步骤将被传递到最后一个步骤,以便聚合整个模型?