3

在 MvvmCross ViewModel 中,Init 方法用于任何屏幕初始化。但是,在 Init 完全完成之前不会绘制屏幕。我有一些繁重的操作(数据库搜索)。所以理想情况下我想用进度条绘制屏幕,​​然后运行我的初始化方法,最后更新屏幕。我会将这些操作放在 MvvmCross ViewModel 的什么位置?

4

1 回答 1

4

我会在Service. 在该服务中,我会:

  • 创建一个触发Done事件的方法,您可以在其中侦听该事件,ViewModel并从那里用数据填充属性。

或者

  • 创建一个在后台线程上等待的异步方法,当它返回时填充属性。

当此服务运行并获取数据时,我会在加载数据时简单地在屏幕上显示其他内容。这可能是一些缓存数据或进度条或其他东西。

于 2013-07-25T17:41:05.577 回答