我的页面中有一个图像控件,它支持横向和纵向布局。我想实现一个动画,当 oritentaion 更改时旋转图像。就像应用程序栏的内置旋转动画一样。但我现在一无所知。谁能帮我一把?
至少有两种方法可以实现它:
1) 捕获方向更改事件并使用表达式混合中的流体 UI 功能对布局进行动画处理。它允许您从一种视觉状态平滑过渡到另一种视觉状态。
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开发人员引入的另一种方法。他的解决方案需要额外的代码,但更可定制:您可以在旋转、淡入淡出或混合动画之间进行选择。还包括一个代码示例。