我正在尝试在我的启动屏幕中使用Lottie动画。
我创建了一个包含我的AnimationView的新XAML页面:
<StackLayout>
<forms:AnimationView
x:Name="SplashView"
Animation="hello.json"
Loop="true"
AutoPlay="true"
IsEnabled="True"
IsPlaying="True"
IsVisible="True"
VerticalOptions="Center"
HorizontalOptions="Center" />
</StackLayout>
当应用程序启动时,MainPage 应该包含 AnimationView。我添加了一个名为 'SplashView.OnFinish' 的事件,因此当动画结束时,使用 NavigationPage.PushAsync 将页面更改为我的主页。
以下是代码:
public SplashScreen ()
{
InitializeComponent ();
NavigationPage.SetHasNavigationBar(this, false);
SplashView.Play();
SplashView.OnFinish += SplashView_OnFinish;
}
protected override void OnAppearing()
{
base.OnAppearing();
SplashView.Play();
}
private void SplashView_OnFinish(object sender, EventArgs e)
{
Navigation.PushAsync(new MainPage());
}
所有功能正常,但我无法看到动画,只有一个白色页面。
Navigation.PushAsync可以正常工作,但动画不显示。
我尝试使用OnAppearing方法来触发我的动画开始,但仍然无法正常工作。