【问题标题】:Create animation to select an image创建动画以选择图像
【发布时间】:2012-05-16 06:43:06
【问题描述】:

我需要用户从 10 个不同的图像中进行选择,我希望将这些图像放置在某种动画中。我正在考虑创建类似的东西:

请注意,在示例图像中,用户向右滚动,最后一张图像被放置在开头。

我还希望动画流畅,因为如果我将图像放在滚动查看器下,那么动画就不流畅了。

我应该将图像放在堆栈面板中,然后为堆栈面板的左边距属性设置动画吗?或者也许我应该将图像放在画布中并单独为每个图像设置动画?

【问题讨论】:

  • 不知道在到达左边缘或右边缘时重新排序图像会有多复杂,但除此之外Surface SDK LibraryBar 提供了非常流畅的动画。

标签: c# wpf animation storyboard


【解决方案1】:

我将有一个堆栈面板,为边距设置动画,然后将第一张图像复制为真正的最后一张图像,该图像将从屏幕外开始,并将“最后一张图像”复制为第一张,然后您可以为任一方向设置动画。我不会使用滚动查看器。

这是布局的外观。

5[12345]1。 A[12345]B.

A是复制画笔来源为5,B是来源为1。

现在您可以使用任何一种方式制作动画,移动图像,并将边距向后移动。

因此,用户“向右”移动。

5[12345]1 动画到 [51234]51

将 A 的源更改为 4,B 的源更改为 5,并在释放控制以进行绘制之前将实际图像移回。 4[51234]5

如果你想要一个滚动条,我会做一个单独的滚动条,将它绑定到边缘,添加一个转换器来控制它。然后改为执行以下操作。

12345[12345]12345

动画滚动位置,当用户释放时,重新排列图像并将滚动条拇指返回到中心。这样,您就不必删除或创建图片了。

提示:您可以在滚动条上使用转换器并将其绑定到随机变量,然后通过将拇指的位置“捕捉”到图像堆栈中的“位置”来间接为面板的边距设置动画。

【讨论】:

    猜你喜欢
    • 2016-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-19
    • 1970-01-01
    相关资源
    最近更新 更多