2017-09-23 42 views
0

我有一个问题,我在某些控件上有过渡,如EntranceThemeTransition,这意味着它们以愉快的方式出现。但是,这些转换似乎忽略了包含控件的常规剪辑,即ListViewScrollViewerUWP:转场不被剪辑?

这意味着我的元素瞬间出现在ListView之外,因为它们在动画中,但是一旦动画结束,元素将遵循剪切路径,并且每个元素都很好。

基本上,我希望过渡动画尊重包含元素的剪辑,就像剪辑一旦完成一样。这不仅仅是ListView有问题,FlipView似乎也。

对于一瞬间,我会看到动画发生在FlipViewItem里面,其中不是目前的一个!我不明白这怎么可能不是FlipView中的一个bug。

无论如何,有什么办法让那些过渡动画尊重剪辑?看到ListView以外的动画片断是非常难看的等等。

回答

0

如果是ListView您不能过多地影响行为,因为这是过渡的工作方式。您可以使用EntranceThemeTransitionFromHorizontalOffsetFromVerticalOffset属性对其进行调整。

FlipView的情况下,它本身并不是一个错误。 FlipView基本上是一个ScrollViewer具有特殊行为(一次只能看到一个项目),但项目甚至会预载入(尤其是紧接的前一个和下一个)。这意味着当页面加载时,出现FlipView并且其子代被加载,您可能会看到当前显示的项目之外的转换。为了避免这一点,你有几种选择:

  • 过渡仅显示的第一项的孩子
  • 添加EntranceThemeTransition只对FlipView本身
  • 使用Storyboard或隐式动画创建一个自定义动画手动启动它,当翻盖查看物品变化
+0

感谢您的这一点,我最终发现了一种意外修理。我在翻转屏幕上放置了一个“请稍候”窗格来显示加载进度,这似乎可以解决问题。我不知道为什么,但我没有抱怨。 – Garry