0

我的页面中有一个图像控件,支持横向和纵向布局。我想实现一个动画,当方向改变时旋转图像。这就像应用程序栏的内置旋转动画一样。但我现在没有任何想法。谁能帮我一把?

4

1 回答 1

1

至少有两种实现方式:

1) 使用 Expression Blend 中的 Fluid UI 功能捕捉 OrientationChanged 事件和动画布局。它允许您从一种视觉状态平滑过渡到另一种视觉状态。

 void PhoneApplicationPage_OrientationChanged(object sender, OrientationChangedEventArgs e) {
        if(Orientation==PageOrientation.PortraitUp) {
            VisualStateManager.GoToState(this, "VisualStatePortrait", true);
        }
        else {
            VisualStateManager.GoToState(this, "VisualStateLandscape", true);
        }
    }

您还应该为横向和纵向布局定义视觉状态。有关如何声明它们的更多信息,您可以从视频中找到。

2) 另一种方法是由 Microsoft 的 Windows Phone 开发人员引入的。他的解决方案需要额外的代码,但更可定制:您可以在旋转、淡入淡出或混合动画之间进行选择。还包括一个代码示例。

于 2012-08-16T14:58:20.220 回答