Xamarin表格动画

时间:2019-09-03 15:56:23

标签: xamarin xamarin.android

我有一个简单的代码,该代码使用ScaleTo方法来构建简单的动画,并且该代码在上周五一直可以正常工作,突然之间它不再起作用。 这是我的XAML文件:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
         xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
         xmlns:d="http://xamarin.com/schemas/2014/forms/design"
         xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
         mc:Ignorable="d"
         x:Class="TestAnim.MainPage">
  <StackLayout Orientation="Vertical">
    <Image Source="discount.png" x:Name="img" Scale="0.1"/>
    <Button Text="Do" Clicked="doIt"/>
  </StackLayout>
</ContentPage>

这是我的C#代码:

using System;
using System.ComponentModel;
using Xamarin.Forms;
namespace TestAnim
{
  [DesignTimeVisible(false)]
  public partial class MainPage : ContentPage
  {
    public MainPage()
    {
        InitializeComponent();
    }
    async void doIt (object sender , EventArgs ev)
    {
        await img.ScaleTo(1, 2000, Easing.BounceOut);
        await img.ScaleTo(0.1, 3000, Easing.BounceIn);
    }
  }
}

运行代码时,我看不到任何效果,如果我注释第二个ScaleTo调用,我会看到图像缩放为1,但这是立即发生的,而不是2秒钟之内!结果,当我使用第二比例尺时,最终结果是根本看不到动画。 正如我之前提到的那样,此方法运行良好,但由于某种原因,持续时间似乎被忽略了,并且缩放似乎立即发生,这就是这里的问题。 还有其他人遇到相同的问题吗?

1 个答案:

答案 0 :(得分:0)

如果您使用的Xamarin.Forms 4.2+版本当前存在一个有关动画的错误,则可以here对其进行跟踪。

我已经在Xamarin.Forms 4.1.0.581479中复制了您的代码,并且工作正常。