查看FadeTo在Android API 22中不褪色

时间:2018-09-19 10:31:25

标签: android xamarin.android

我在iOS和Android的Xamarin中工作。我正尝试从0到1延迟5000毫秒,逐渐淡入我的应用程序徽标。看来FadeTo()函数在具有API 26的手机上可以正常工作。但是,当我尝试运行相同功能时在使用API​​ 22的另一部手机中使用该功能时,我要淡入的视图不会消失。图片/徽标仅在应用程序准备运行后立即显示。请注意,准备应用运行所需的时间(灰白色屏幕)最多不超过5秒。有时会在2-4秒之间。无论哪种方式,我都需要知道如何解决此逐渐消失的错误。

因此,在我的SplashScreen.xaml中,其中包含我想淡入的Image,称为logo。这是代码:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="ProjectName.SplashScreenPage">
    <ContentPage.Content>
        <StackLayout BackgroundColor="White">
            <Image x:Name="logo"
                   Source="logo"
                   HorizontalOptions ="CenterAndExpand"
                   VerticalOptions="CenterAndExpand"
                   Opacity="0"
                   Aspect="AspectFit"/>
        </StackLayout>
    </ContentPage.Content>
</ContentPage>

SplashScreen.cs中,该文件包含淡入图像logo的代码。仅在构造函数中有代码。因此,我只打算复制构造函数。 SplashScreen.cs文件的代码为:

public SplashScreenPage ()
{
    InitializeComponent ();
    Device.BeginInvokeOnMainThread(() =>
    {
         ViewExtensions.FadeTo(logo, 1, 5000, Easing.Linear);
    });
}

除了这两个文件外,我没有碰过任何其他代码。 AndroidManifest.xml文件包含与API级别有关的本节,

<uses-sdk android:minSdkVersion="22" android:targetSdkVersion="27" />

让我知道是否需要添加信息

0 个答案:

没有答案