Анимации свойства стиля слоя
Во время процесса рендеринга Базовая Анимация берет различные атрибуты уровня и представляет их в определенном порядке. Этот порядок определяет заключительное появление уровня. Эта глава иллюстрирует представленные результаты, достигнутые путем установки различных свойств стиля слоя.
Свойства геометрии
Свойства геометрии уровня указывают, как это выведено на экран относительно ее родительского слоя. Геометрия также указывает радиус, привыкший к раунду углы уровня и преобразование, применяющееся к уровню и его подуровням. Рисунок a-1 показывает ограничительный прямоугольник уровня в качестве примера.
Следующий CALayer
свойства указывают геометрию уровня:
frame
(вычисленный изbounds
иposition
и не animatable),
Фоновые свойства
Первой вещью, которую представляет Анимация Ядра, является фон уровня. Можно указать цвет для фона. В OS X можно также указать Базовый фильтр Изображения, что Вы хотите примениться к фоновому содержанию. Рисунок a-2 показывает две версии демонстрационного уровня. Уровень слева имеет backgroundColor
набор свойств, в то время как уровень справа не имеет никакого цвета фона, но действительно имеет границу некоторым содержанием и фильтром искажения повышения присвоенный backgroundFilters
свойство.
Фоновый фильтр применяется к содержанию, стоящему за уровнем, прежде всего состоящим из содержания родительского слоя. Вы могли бы использовать фоновый фильтр, чтобы заставить приоритетное содержание уровня выделиться; например, путем применения фильтра размытия.
Следующий CALayer
свойства влияют на дисплей фона уровня:
backgroundFilters
(не поддерживаемый в iOS)
Содержание уровня
Если уровень имеет какое-либо содержание, то содержание представляется поверх цвета фона. Можно обеспечить содержание уровня путем установки битового массива непосредственно, при помощи делегата для указания содержания, или путем разделения на подклассы уровня и рисования содержания непосредственно. И можно использовать много различных технологий получения (включая Кварц, Металл, OpenGL и Кварцевого Композитора) для обеспечения того содержания. Рисунок a-3 показывает демонстрационный уровень, содержание которого является битовым массивом, установленным непосредственно. Растровое содержание состоит из в основном прозрачного пространства со значком Automator в правом нижнем углу.
Уровни с угловым радиусом автоматически не отсекают свое содержание; однако, установка уровня masksToBounds
свойство к YES
действительно заставляет уровень отсекать к его угловому радиусу.
Следующий CALayer
свойства влияют на дисплей содержания уровня:
Содержание подуровней
Любой уровень может содержать один или несколько дочерних уровней, известных как подуровни. Подуровни представлены рекурсивно и расположены относительно прямоугольника границ родительского слоя. Кроме того, Базовая Анимация применяет родительский слой sublayerTransform
к каждому подуровню относительно точки привязки родительского слоя. Можно использовать подуровня, преобразовывают для применения перспективы и других эффектов ко всем уровням одинаково. Рисунок a-4 показывает демонстрационный уровень с двумя подуровнями. В то время как версия справа не делает, версия слева включает цвет фона.
Установка masksToBounds
свойство уровня к YES
причины любые подуровни, которые будут отсечены к границам уровня.
Следующий CALayer
свойства влияют на дисплей подуровней уровня:
Атрибуты границы
Уровень может вывести на экран дополнительную границу с помощью указанного цвета и ширины. Граница следует за прямоугольником границ уровня и принимает во внимание любые угловые значения радиуса. Рисунок a-5 показывает демонстрационный уровень после применения границы. Заметьте, что содержание и подуровни, которые являются вне границ уровня, представляются под границей.
Следующий CALayer
свойства влияют на дисплей границ уровня:
Свойство фильтров
В OS X можно применить один или несколько фильтров к содержанию уровня и использовать пользовательский фильтр составления композита, чтобы указать, как содержание уровня смешивается с содержанием его нижележащего слоя. Рисунок a-6 показывает, что демонстрационный уровень с Базовым Изображением постеризирует примененный фильтр.
Следующий CALayer
свойство указывает фильтры контента уровней:
Теневые свойства
Уровни могут вывести на экран эффекты тени и сконфигурировать их форму, непрозрачность, цвет, смещение и радиус размытия. Если Вы не указываете пользовательскую теневую форму, тень основывается на частях уровня, которые не полностью прозрачны. Рисунок a-7 показывает несколько различных версий того же демонстрационного уровня с красной примененной тенью. Левые и средние версии включают цвет фона, таким образом, тень появляется только вокруг границы уровня. Однако версия справа не включает цвет фона. В этом случае тень применяется к содержанию уровня, границе и подуровням.
Следующий CALayer
свойства влияют на дисплей тени уровня:
Свойство непрозрачности
Свойство непрозрачности уровня определяет, сколько фоновое содержание показывает через уровень. Рисунок a-8 показывает демонстрационный уровень, непрозрачность которого установлена в 0.5
. Это позволяет частям фонового изображения показывать через.
Следующий CALayer
свойство указывает непрозрачность уровня:
Свойства маски
Можно использовать маску для затемнения всех или части содержания уровня. Маска является самостоятельно расположенным на слое объектом, альфа-канал которого используется для определения то, что блокируется и что передается. Непрозрачные части содержания маскирующего слоя позволяют содержанию нижележащего слоя показывать через в то время как прозрачные части частично или полностью неясный базовое содержание. Рисунок a-9 показывает демонстрационный уровень, составленный с маскирующим слоем и двумя различными фонами. В левой версии непрозрачность уровня установлена в 1,0. В правильной версии непрозрачность уровня установлена в 0,5, который увеличивает сумму фонового содержания, передающегося через маскированный участок уровня.
Следующий CALayer
свойство указывает маску для уровня: