整合在一起
Fluent 動作的基本功能由計時、緩動、方向性和重力共同構成。 涉及其中一項時也必須將其他各項納入考慮,並在應用程式的內容中適當地套用。
以下是在應用程式中套用 Fluent 動態基本功能的 3 種方式。
隱式動畫 參數變更中的值之間的自動補間和計時,以使用標準化值實現非常簡單的 Fluent 動態。
內建動畫 系統元件 (例如公共控制和共用動態)「預設為 Fluent」。 基本功能的套用方式與其隱含的用法一致。
遵循指南建議的自訂動畫 有時系統可能尚未為您的場景提供精確的動態解決方案。 在這些情況下,請使用基準基本功能建議作為體驗的起點。
轉換體驗
向前離開方向:
淡出:150m; 緩動:預設加速 向前進入方向:
向上滑動150px:300ms; 緩動:預設減速
向後離開方向:
向下滑動150px:150ms; 緩動:預設加速向後進入方向:
淡入:300ms; 緩動:預設減速
物件範例
展開方向:
成長:300ms; 緩動:標準
合約方向:
成長:150ms; 緩動:預設加速
範例
如果您已安裝 WinUI 2 程式庫應用程式,請按一下此處以開啟應用程式並查看隱式轉換的運作情形。 |
隱式動畫
隱式動畫需要 Windows 10 版本 1809 (SDK 17763) 或更新版本。
隱式動畫是一種透過在參數變更期間,在新舊值之間自動插值來實現 Fluent 動態的簡單方法。
您可以更改隱式動畫的以下屬性:
-
- 不透明度
- 旋轉
- 縮放比例
- 翻譯
Border、ContentPresenter 或 Panel
- 背景
每個可以進行隱式動畫變更的屬性都有一個對應的轉換屬性。 若要為屬性設定動畫,您可以將轉換類型指派給對應的轉換屬性。 下表顯示了每個屬性要使用的轉換屬性和轉換類型。
此範例示範如何使用 Opacity 屬性和轉換,來使按鈕在啟用控制項時淡入並在停用控制項時淡出。
<Button x:Name="SubmitButton"
Content="Submit"
Opacity="{x:Bind OpaqueIfEnabled(SubmitButton.IsEnabled), Mode=OneWay}">
<Button.OpacityTransition>
<ScalarTransition />
</Button.OpacityTransition>
</Button>
public double OpaqueIfEnabled(bool IsEnabled)
{
return IsEnabled ? 1.0 : 0.2;
}
相關文章
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應