Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xamarin 有人能澄清一下,在为屏幕获取数据时,使用MVVM模式时,我应该将代码放在哪里吗?_Xamarin_Xamarin.forms - Fatal编程技术网

Xamarin 有人能澄清一下,在为屏幕获取数据时,使用MVVM模式时,我应该将代码放在哪里吗?

Xamarin 有人能澄清一下,在为屏幕获取数据时,使用MVVM模式时,我应该将代码放在哪里吗?,xamarin,xamarin.forms,Xamarin,Xamarin.forms,我有一个应用程序屏幕,当导航到时,屏幕上会一个接一个地显示单词。在显示每个单词之间,应用程序会等待一段时间 当前的功能如下所示: Page Constructor (xaml.cs) vm = new CardsTabViewModel(); BindingContext = vm; Page OnAppearing Loop Get first word into variable x vm.Word = x.Text

我有一个应用程序屏幕,当导航到时,屏幕上会一个接一个地显示单词。在显示每个单词之间,应用程序会等待一段时间

当前的功能如下所示:

Page Constructor (xaml.cs)
   vm = new CardsTabViewModel();
   BindingContext = vm;

Page OnAppearing
   Loop
      Get first word into variable x
         vm.Word = x.Text
             Wait a few seconds
   End Loop
我试图实现MVVM,但对获取数据的代码应该在哪里感到困惑


获取数据的代码应该在页面的OnAppearing中吗?如果不是,应该在哪里

在您的虚拟机中创建一个Init方法,它可以执行任何需要的操作。然后,如果只需要调用一次,则从页面构造函数调用它;如果每次显示页面时都需要调用它,则从外观调用它

这取决于您是否只需要在页面构造函数中加载一次。如果你把它放在一个页面上,你的代码会在每次你回到页面时被调用,就像你在上面推了一个新的,然后回击一样。如果你想要更详细的解释,你可以去看看。