Встроенная анимация вращения панели приложений в Windows Phone

На моей странице есть элемент управления изображением, который поддерживает альбомную и портретную компоновку. Я хочу реализовать анимацию, которая поворачивает изображение при изменении ориентации. Что так же, как встроенная анимация поворота панели приложений. Но я понятия не имею, прямо сейчас. Кто-нибудь может мне помочь?

1 ответ

Решение

Есть как минимум два способа реализовать это:

1) Поймать событие OrientationChanged и анимировать макет, используя функцию Fluid UI в Expression Blend. Позволяет плавно переходить из одного визуального состояния в другое.

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

Вы также должны определить визуальные состояния для ландшафтного и портретного макета. Подробнее о том, как их объявить, вы можете узнать из этого видео.

2) Другой подход, представленный разработчиком Windows Phone от Microsoft. Его решение требует дополнительного кода, но более настраиваемый: вы можете выбирать между вращением, затуханием или гибридной анимацией. Пример кода также включен.

Другие вопросы по тегам