2

我正在寻找用 Exrin 创建动画。我了解它的 MVVM 框架方面要求 View 拥有动画,但最初触发这些动画是我不确定的。

我确实知道附加到 UI 事件是一个热键问题,因为这样命令和事件可能会同时存在。

Exrin 是否有办法处理文档中未涉及的动画,我应该将动画附加到 UI 事件,还是应该使用外部的东西,如附加行为

4

1 回答 1

1

正如您所指出的,动画是 Xamarin 表单的一部分,Exrin 并未专门处理它们。

为了触发动画,并与 MVVM 纯粹主义者的心态保持一致,我会使用触发器。

例如,您创建一个触发器,只有一个类

public class BackgroundColorTrigger : TriggerAction<Entry>
{    
     protected override void Invoke(Entry sender)
     {
         sender.BackgroundColor = Color.Yellow;
     }
}

当然,您可以从这里运行动画。然后在 XAML 中,你会做

// Add to Page Attributes (Above Trigger is in Namespace Mobile.Trigger)
xmlns:trigger="clr-namespace:Mobile.Trigger"

<Entry Text="{Binding EntryField}">   
    <Entry.Triggers>
        <EventTrigger Event="Focused">
            <trigger:BackgroundColorTrigger />
        </EventTrigger>
    </Entry.Triggers>
</Entry>

但是将触发器更改为您需要的。

动画是纯 UI 概念,因此保留在 Exrin 的 View 项目中。XAML 可以直接触发动画,逻辑可以放在触发器中。

来源:https ://xamarinhelp.com/xamarin-forms-triggers-behaviors-effects/

动画:https ://xamarinhelp.com/custom-animations-in-xamarin-forms/

于 2017-08-04T00:30:43.280 回答