Название: Программирование для мобильных платформ. Android и WP. Учебный курс
Автор: Иван Андреевич Трещев
Издательство: Издательские решения
Жанр: Компьютеры: прочее
isbn: 9785449894588
isbn:
Существуют различные способы гарантировать правильное отображение содержимого как в портретной, так и в альбомной ориентации. Два основных метода – это прокрутка (scrolling) и сетка (grid layout). Эти методы могут использоваться отдельно или в сочетании друг с другом.
Scrolling использует элемент управления StackPanel, который находится в элементе управления ScrollViewer. Используйте этот метод, если содержимое отображается в виде списка или если различные элементы управления следуют один за другим на странице. StackPanel позволяет установить порядок расположения дочерних элементов одного за другим, а элемент управления ScrollViewer позволяет прокручивать содержимое StackPanel, если элементы пользовательского интерфейса не помещаются на экране.
2.13.3 Управление ориентацией экрана в Silverlight
Если вы откроете предыдущие примеры на Silverlight и повернете устройство набок, то обнаружите, что изображение на экране не изменило свое расположение при смене ориентации. Это легко исправить. Посмотрите код в файле MainPage. xaml и найдите строчку:
SupportedOrientations=«Portrait» Orientation=«Portrait»
Данный код говорит о том, что проект поддерживает только портретный режим и в этом же режиме и запускается. Свойство SupportedOrientations поддерживает следующие режимы (рис.):
Рисунок 2.18 Набор свойств ориентации экрана
– Portrait (по умолчанию)
– Landscape
– PortraitOrLandscape
Достаточно заменить указанную выше строчку на SupportedOrientations=«PortraitOrLandscape», и ваше приложение будет реагировать на смену режима автоматически.
Вероятно, вы уже догадались, что свойство Orientation отвечает за начальный режим во время запуска приложения. Только вы не должны забывать о поддержке выбранного режима. Иными словами, если вы хотите, чтобы приложение запускалось в альбомном режиме, то у свойства SupportedOrientation должно быть значение Landscape или PortraitOrLandscape. Возможно, вас удивит, что свойство поддерживает целых шесть различных значений.
– Landscape
– LandscapeLeft
– LandscapeRight
– Portrait
– PortraitDown
– PortraitUp
Используя эти значения, вы можете даже задать портретный режим вверх тормашками (PortraitUp). PortraitDown – это обычный портретный режим, а Portrait – общее свойство для двух портретных режимов, когда уточнение не требуется. Аналогично справедливо и для альбомных режимов.
2.13.4 События изменения ориентации
Итак, вы можете настроить ориентацию экрана еще во время разработчки дизайна приложения через свойство SupportedOrientation. В этом случае система сама позаботится о нужном режиме. Тут нужно проявить аккуратность. Как правило, разработчик не препятствует пользователю вращать устройством во время работы с приложением. Но здесь может возникнуть одна небольшая неприятность. Взгляните на рисунки ниже. Предположим, вы написали программу-калькулятор, который красиво смотрится в портретном СКАЧАТЬ