在UWP中显示网格时模拟页面转换动画

本文关键字:转换 动画 模拟 UWP 显示 网格 | 更新日期: 2023-09-27 18:25:52

我有一个Windows 10(UWP)应用程序,SplitView中有几个屏幕。在页面之间导航时,会显示页面转换动画(我向SplitViewFrame添加了动画)。

应用程序的一个页面有点不同。在左半部分显示了一个日历。在右半部分显示了一天的细节。当用户点击日历中的某一天(在左侧)时,详细信息显示在右侧。

当窗口很窄或应用程序在手机上运行时,只显示日历或日期。因此,用户可以看到日历,点击某一天,日历就会隐藏(Visibility=Collapsed),日期详细信息就会显示(Visibility=Visible)。反之亦然。

问题是,这感觉很尴尬,因为没有任何动画看起来像是从日历过渡到一天。

所以问题是,当显示网格时,如何模拟页面转换动画?

我看了一个主细节场景的UWP样本(我的情况基本上是主细节场景)。在示例中,Microsoft有两个页面,一个是带有列表和详细信息的母版页,另一个是单独的、重复的详细信息页。还有大量丑陋的代码,用于根据屏幕大小进行导航,在窗口大小更改时操作后堆栈等等。这不是一个真正优雅的解决方案。

在UWP中显示网格时模拟页面转换动画

不确定是否有一个优雅的解决方案来模拟导航转换,但我不会使用Visibility。它不能很好地播放动画。

我会考虑使用类似Transform动画的东西来将两个元素偏移一个屏幕宽度。我不会模拟导航转换,但它会比刺耳的开关更好。

或者,您可以在更改选项卡时模拟类似Pivot的转换。