我正在寻找用 Exrin 创建动画。我了解它的 MVVM 框架方面要求 View 拥有动画,但最初触发这些动画是我不确定的。
我确实知道附加到 UI 事件是一个热键问题,因为这样命令和事件可能会同时存在。
Exrin 是否有办法处理文档中未涉及的动画,我应该将动画附加到 UI 事件,还是应该使用外部的东西,如附加行为?
我正在寻找用 Exrin 创建动画。我了解它的 MVVM 框架方面要求 View 拥有动画,但最初触发这些动画是我不确定的。
我确实知道附加到 UI 事件是一个热键问题,因为这样命令和事件可能会同时存在。
Exrin 是否有办法处理文档中未涉及的动画,我应该将动画附加到 UI 事件,还是应该使用外部的东西,如附加行为?
正如您所指出的,动画是 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/