簡介
過渡動畫是當發生事件時控件UI狀態發生改變時以一種動畫形式來演變到另外一種狀態,而非瞬間改變,使用一種更加平滑的方式來進行切換,例如下圖是文字切換的交叉柵欄效果:
還有頁面切換動畫:
在或者是圖標動畫:
這些都是屬于過渡動畫的一種。
Transitions
在WinUI3中動畫使用的Transitions
類,如果想使用它也非常簡單,只需要在XAML
里使用Transitions
即可Transitions
支持多種不同狀態的動畫,其中包括位置移動、元素刪除、增加、頁面切換等事件動畫,每個事件都只有一個動畫,下面是Transitions
所支持的動畫效果:
EntranceThemeTransition: 控件或元素“進入”屏幕時的動畫。適合新項出現時的過渡效果。
RepositionThemeTransition: 控件的位置發生變化時的平滑動畫,比如列表重排或元素移動。
AddDeleteThemeTransition: 元素添加或刪除時的動畫。例如 ItemsControl 添加或刪除子項時的視覺效果。
ContentThemeTransition: 內容切換時的動畫。適用于 ContentControl、Frame 等內容控件的頁面切換。
EdgeUIThemeTransition: 從屏幕邊緣滑入或滑出 UI 元素的動畫,常用于邊欄(pane)出現消失。
PopupThemeTransition: 彈出元素(如 Flyout、Popup)打開時的動畫效果。
如果在容器里增加了動畫,那么容器里所有組件都會自動繼承容器的動畫效果:
<Grid.Transitions><TransitionCollection><EntranceThemeTransition/><RepositionThemeTransition/></TransitionCollection>
</Grid.Transitions>
運行效果: