【发布时间】:2018-09-24 22:31:34
【问题描述】:
什么是异步加载数据以尽可能快地向用户显示 UI 的正确方法。例如
我有一个 xamarin forms projekt,其中包含一个地图组件。 我想在获取用户当前位置(来自 gps)和从服务器获取的一些位置/引脚之前显示地图。这两种方法我都见过
1) 从构造函数调用异步方法
Map mMyMap;
ctor()
{
InitializeCompeont();
InitAsync();
}
private async void InitAsync()
{
var pins = await GetPinsFromServer();
mMyMap.Pins.Add(pins)
}
2) 在出现时
ctor()
{
InitalizeComponent()
}
protected override async void OnAppearing()
{
var pins = await GetPinsFromServer();
mMyMap.Pins.Add(pins)
}
这两种方法似乎都“有效”,但我自欺欺人地从构造函数调用异步方法?
我还设法将 BindingContext 双向设置为异步,并且正确绑定
有什么不同吗?
【问题讨论】: