我有一个SplashScreen类,其中显示图像缩放,缩放完成后转到登录页面。我在多台设备上尝试了此操作,但只有一台设备在SplashScreen中没有变化。
我一直在研究如何处理异步方法并等待指令,但到目前为止似乎没有任何效果。我也尝试删除ScaleTo并仅显示图像,但是它不起作用。
这就是我所拥有的:
protected override async void OnAppearing()
{
base.OnAppearing();
await splashLogo.ScaleTo(1.5, 3000);
ShowLogin();
}
答案 0 :(得分:0)
我通过添加此类来解决此问题:
class MainPageViewModel : BaseViewModel
{
private bool isLoadingData;
public bool IsLoadingData
{
get => isLoadingData;
set => SetProperty(ref isLoadingData, value);
}
public async Task LoadData()
{
IsLoadingData = true;
await Task.Delay(2000);
IsLoadingData = false;
}
}
然后在我的SplashScreen页面中
public SplashScreen()
{
//Everything else I need in this page
BindingContext = new MainPageViewModel();
}
private MainPageViewModel ViewModel => BindingContext as MainPageViewModel;
protected override async void OnAppearing()
{
base.OnAppearing();
await ViewModel.LoadData();
ShowLogin();
}