Адаптация к повороту экрана Windows Phone

Я создаю приложение камеры с помощью MediaCapture. Я пытаюсь приспособиться к повороту экрана, и поэтому я создал следующий метод:

        private void Current_SizeChanged(object sender, Windows.UI.Core.WindowSizeChangedEventArgs e)
    {
        width = Window.Current.Bounds.Width;
        height = Window.Current.Bounds.Height;
        //captureManager.SetPreviewRotation(VideoRotation.Clockwise90Degrees);
        //if (ApplicationView.GetForCurrentView().Orientation.ToString() == "Portrait") capturePreview.Stretch = Stretch.Fill;
        capturePreview.Width = width;
        capturePreview.Height = height;
        imagePreview.Width = width;
        imagePreview.Height = height;
        //if (ApplicationView.GetForCurrentView().Orientation.ToString() == "Portrait") capturePreview.Stretch = Stretch.Fill;
        //else capturePreview.Stretch = Stretch.Uniform;
    }

Когда я открываю свое приложение, камера заполняет всю страницу, но когда я переворачиваю камеру, capturePreview занимает только половину страницы. Не имеет значения, запускаю ли я приложение в портретном или горизонтальном режиме, другой режим не будет работать, но первый режим также будет переключен на.

Другой вопрос касается фактического макета capturePreview. Я обнаружил, что если я сохраняю экран в горизонтальном положении, камера работает отлично, но если устройство находится в портретном режиме, я не могу заполнить всю страницу, не растягивая фотографию, есть ли способ сохранить только один элемент на экране в определенном повороте (capturePreview) Я попытался повернуть его с помощью преобразования поворота, но это также влияет на фактическое место элемента. Спасибо

1 ответ

Решение

В WP вы получаете CurrentViewState через событие Window.Sizechanged.

Смотрите эту статью MSDN (первый результат от Google)

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