如何在 Xamarin Forms 中为 ListView 项目设置动画?

How to Animate ListView items in Xamarin Forms?

我想在通过 API 调用添加列表项后对其进行动画处理。但是只有在它们第一次加载时才对它们进行动画处理。

要访问 ViewCell,您可以使用出现在 ViewCell 元素上的事件。您可以在 Scrolled 事件上设置一个标志,以防止在后续出现的触发器上出现动画。

<ListView Scrolled="listView_Scrolled" ItemsSource="{Binding Items}">
    <ListView.ItemTemplate>
        <DataTemplate>
            <ViewCell Appearing="ViewCell_Appearing">
                [Content Here]
            </ViewCell>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>
private bool scrolled = false;

...

void ViewCell_Appearing(object sender, EventArgs e)
{
    if (!scrolled)
    {
        ViewCell cell = (ViewCell)sender;
        CustomAnimation(cell);
    }
}

void listView_Scrolled(object sender, ScrolledEventArgs e)
{
    scrolled = true;
}