Сожалеем, но текст оригинала доступен только зарегистрированным пользователям. |
Внешний вид и поведение
iOS 7 вносит ряд изменений в организацию и внешний вид интерфейса. Изменения во взаимодействии и компоновке макета, цветовой гамме, шрифтах влияют на все составные части вашего приложения. Кроме того, усовершенствования в распознавании жестов дают впечатляющий полный контроль над взаимодействием с пользователем.
KuLena
12.02.14 в 20:59
|
|
Использование контроллеров отображения
В iOS 7 контроллеры вида используют все пространство экрана. В то же время, iOS 7 предоставляет вам более гибкий контроль над тем, как контроллеры осуществляют свои функции. В частности, концепция полноэкранного макета была усовершенствована, чтобы позволить контроллерам определять положение каждого уголка в поле зрения. (!!) текст довольно общий и абстрактный.
KuLena
12.02.14 в 21:05
|
|
Свойство <WantsFullScreenLayout> контроллера вида в iOS 7 считается устаревшим. Если вы в настоящее время присваиваете <wantsFullScreenLayout = NO>, контроллер может отобразить его содержимое в неожиданном месте экрана после запуска iOS 7.
KuLena
12.02.14 в 21:09
|
|
Чтобы настроить отображение с помощью контроллера вида , <UIViewController> предоставляет следующие свойства:
• edgesForExtendedLayout
Свойство <EdgesForExtendedLayout> использует <UIRectEdge type>, который задает каждый из четырех краев прямоугольника, а также опции "нет" и "все".
Используйте <edgesForExtendedLayout> чтобы указать, какие из границ должны быть расширены, независимо от полупрозрачности баров. По умолчанию это свойство имеет значение <UIRectEdgeAll>.
• extendedLayoutIncludesOpaqueBars
Если ваш проект использует непрозрачные бары, уточните <edgesForExtendedLayout>, установивив также значение <NO> для <extendedLayoutIncludesOpaqueBars>. (Это значение по умолчанию)
• automaticallyAdjustsScrollViewInsets
Если вы не хотите, чтобы (?)scroll view’s content(?) были изменены автоматически, установите <NO> в <automaticallyAdjustsScrollViewInsets>. (Значение по умолчанию <automaticallyAdjustsScrollViewInsets> - <YES>.)
• topLayoutGuide, bottomLayoutGuide
Свойства <TopLayoutGuide> и <bottomLayoutGuide> определяют расположение границ верхней и нижней панели/бара. Если панели должны перекрывать сверху или снизу представления, вы можете использовать Interface Builder для размещения представления относительно бара, создавая ограничения на низ <topLayoutGuide> или верх <bottomLayoutGuide>. (Если таких баров нет, то значения нижней границы <topLayoutGuide> и верхней границы экрана совпадают, аналогично совпадают верхняя граница <bottomLayoutGuide> с нижним краем экрана.) Оба свойства легко задаются при необходимости.
KuLena
12.02.14 в 21:28
|
|
В iOS 7 контроллеры вида могут поддерживать пользовательские анимированные переходы между экранами. Кроме того, вы можете использовать iOS 7 API для поддержки взаимодействия с пользователем во время анимированного перехода. Чтобы узнать больше, см. UIViewControllerAnimatedTransitioning Protocol и UIViewControllerInteractiveTransitioning Protocol.
KuLena
12.02.14 в 21:30
|
|
iOS 7 дает возможность контроллерам изменять стиль статусной строки, когда запущено приложения. Хороший способ динамически изменить стиль статус-бара – реализовать preferredStatusBarStyle, во время блока анимации обновлять внешний вид и вызывать setNeedsStatusBarAppearanceUpdate.
KuLena
12.02.14 в 21:35
|
|
Примечание
Если вы предпочитаете отказаться от настройки вида статус-бара контроллерами вида, то вместо этого установите стиль статус-бара используя метод <UIApplicationstatusBarStyle>, добавьте ключ <UIViewControllerBasedStatusBarAppearance> в файл <Info.plist> и присвойте ему значение "NO".
KuLena
14.02.14 в 07:58
|
|
Использование подцветки
В iOS 7, цвет подцветки – это свойство <UIView>. Приложения в iOS 7 часто используют цветовое кодирование для определения ключевых цветов, определяющих согласованность и (?)структуру выбора элементов интерфейса во всем приложении.
KuLena
16.02.14 в 16:54
Использование тонирования
В iOS 7, тонирование – это свойство <UIView>. Приложения в iOS 7 часто используют тонирование для определения значения цвета, отражающих активное и выбранное состояния элементов интерфейса во всем приложении.
KuLena
18.02.14 в 19:15
|
|
Когда вы указываете цвет подцветки для отображения, подцветка автоматически распространяются на все отображения в иерархии. Так как <UIWindow> наследует от <UIView>, вы можете указать цвет подцветки для всего приложения, изменив свойство (?)подцветки окна, используя такой код:
KuLena
16.02.14 в 17:08
Когда вы задаете тонирование для конкретного отображения, цвет автоматически распространяются на все отображения в иерархии. Так как <UIWindow> наследует от <UIView>, вы можете указать цвет тонирования для всего приложения, изменив свойство окна, используя такой код:
KuLena
18.02.14 в 19:17
|
|
Совет
Вы можете также установить подцветку приложения в Конструкторе Интерфейса. Общее Цветовое меню в разделе Документации Конструктора Интерфейса инспектора файлов позволяет открыть окно выбора цвета или задать определенный цвет.
KuLena
16.02.14 в 17:27
|
|
Если вы не укажите цвет для окна, оно использует системный цвет по умолчанию.
По умолчанию, значение подцветки = nil, что означает, отображение использует его родительский оттенок. Это также означает, что когда вы запрашиваете у отображения его оттенок, оно всегда возвращает значение цвета, даже если вы еще его не установили.
В общем случае, лучше изменить цвет для отображения пока оно за пределами экрана. Чтобы заставить отображение вернуться к использованию его родительского оттенка, установите значение цвета = nil.
KuLena
16.02.14 в 18:29
|
|
Важно Настройка свойства <tintColor> через внешние прокси API не поддерживается в iOS 7.
KuLena
16.02.14 в 18:58
|
|
Когда приходит оповещение или открывается список действий, iOS 7 автоматически приглушает цвета элементов нижнего слоя. Чтобы обработать это изменение цвета, (?)настраиваемый подкласс отображений, который использует при рендеринге <tintColor> должен переопределить <tintColorDidChange> и обновить рендеринг, когда потребуется.
KuLena
18.02.14 в 19:44
|
|
Примечание
В iOS 6, <tintColor> окрашивал фон панелей навигации, вкладок, панели инструментов, строки поиска и др. Чтобы задать оттенок панели в iOS 7 теперь используется свойство <barTintColor>.
KuLena
18.02.14 в 19:48
|
|
Использование шрифтов
iOS 7 вводит в обращение Динамический шрифт, использоание которого позволяет с легкостью отображать привлекательный текст в приложении.
Сообщение с самым маленьким размером букв Сообщение с самым крупным из доступных размеров
KuLena
18.02.14 в 19:54
|
|
Когда вы применяете Динамического шрифт, вы получаете:
• автоматическую корректировку межбуквенных интервалов и межстрочного расстояния для каждого размера шрифта. • возможность задать различные стили для семантически различных фрагментов текста, например, сносок, заголовков или основного текста. • текст, который реагирует соответствующим образом, когда пользователи меняют свой желаемый размер букв в Настройках.
KuLena
18.02.14 в 20:00
|
|
Чтобы воспользоваться этими функциями, подготовьтесь отвечать на уведомления, которые посылаются, когда пользователь изменяет значение размера текста. Используйте метод <UIFont> – <preferredFontForTextStyle>, чтобы получить новый шрифт, который будет использоваться в интерфейсе. iOS 7 оптимизирует шрифты, установленные с помощью этого метода, для максимальной четкости в любом размере. Чтобы узнать подробнее о стилях текста и использовании шрифтов, см. раздел “Стили текста” в Руководство по Программированию для iOS.
KuLena
18.02.14 в 20:05
|
|
Использование Устройств распознования жестов
До iOS 7, если одну распознавателю требовался другой для завершения работы, вы использовали <requireGestureRecognizerToFail:>, чтобы установить постоянную связь между двумя объектами в момент их создания. Это прекрасно работает, когда распознаватели жестов не созданы в других частях приложении или структуре, и набор распознавателей жестов остается неизменным.
KuLena
18.02.14 в 20:38
|
|
|
|
|
|
|
|
|
|
|
|
|
|