在MvvmCross的第五个版本中,添加了一个异步的Initialize重载方法,你可以在其中进行大量数据的异步加载。
有没有一种方法可以在View中确定初始化已经完成了?例如,在View中,我想将工具栏标题设置为显示MyObject中的某个字段。
在设置 SupportActionBar.Title 的那一行中,有没有确定初始化任务是否完成的方法?如果未完成,是否可以在完成后得到通知?
更新: 我尝试设置了两个正确的答案,因为 @nmilcoff 回答了我的实际问题,而 @Trevor Balcom 向我展示了更好的方法。
public override async Task Initialize()
{
MyObject = await GetObject();
}
有没有一种方法可以在View中确定初始化已经完成了?例如,在View中,我想将工具栏标题设置为显示MyObject中的某个字段。
MyViewModel vm;
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
// Create your application here
this.SetContentView(Resource.Layout.MyView);
var toolbar = (Toolbar)FindViewById(Resource.Id.toolbar);
SetSupportActionBar(toolbar);
vm = (MyViewModel)this.ViewModel;
SupportActionBar.Title = vm.MyObject.Name;
}
在设置 SupportActionBar.Title 的那一行中,有没有确定初始化任务是否完成的方法?如果未完成,是否可以在完成后得到通知?
更新: 我尝试设置了两个正确的答案,因为 @nmilcoff 回答了我的实际问题,而 @Trevor Balcom 向我展示了更好的方法。