UIView
Наследование
-
NSObject -
UIResponder -
UIView -
ADBannerView -
CAInterAppAudioSwitcherView -
CAInterAppAudioTransportView -
GLKView -
MKAnnotationView -
MKMapView -
MKOverlayView -
MPVolumeView -
SCNView -
SKView -
UIActionSheet -
UIActivityIndicatorView -
UIAlertView -
UICollectionReusableView -
UIControl -
UIImageView -
UIInputView -
UILabel -
UINavigationBar -
UIPickerView -
UIPopoverBackgroundView -
UIProgressView -
UIScrollView -
UISearchBar -
UITabBar -
UITableViewCell -
UITableViewHeaderFooterView -
UIToolbar -
UIVisualEffectView -
UIWebView -
UIWindow -
WKWebView
-
NSObject -
UIResponder -
UIView -
ADBannerView -
CAInterAppAudioSwitcherView -
CAInterAppAudioTransportView -
GLKView -
MKAnnotationView -
MKMapView -
MKOverlayView -
MPVolumeView -
SCNView -
SKView -
UIActionSheet -
UIActivityIndicatorView -
UIAlertView -
UICollectionReusableView -
UIControl -
UIImageView -
UIInputView -
UILabel -
UINavigationBar -
UIPickerView -
UIPopoverBackgroundView -
UIProgressView -
UIScrollView -
UISearchBar -
UITabBar -
UITableViewCell -
UITableViewHeaderFooterView -
UIToolbar -
UIVisualEffectView -
UIWebView -
UIWindow -
WKWebView
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSCoding -
NSObjectProtocol -
Печатаемый -
Reflectable -
UIAccessibilityIdentification -
UIAppearance -
UIAppearanceContainer -
UICoordinateSpace -
UIDynamicItem -
UITraitEnvironment -
NSCoding -
NSObject -
UIAppearance -
UIAppearanceContainer -
UICoordinateSpace -
UIDynamicItem -
UITraitEnvironment
Оператор импорта
Swift
import UIKit
Objective C
@import UIKit;
Доступность
Доступный в iOS 2.0 и позже.
UIView класс определяет прямоугольную область на экране и интерфейсах для управления содержанием в той области. Во время выполнения объект представления обрабатывает рендеринг любого содержания в его области и также обрабатывает любые взаимодействия с тем содержанием. UIView сам класс обеспечивает основное поведение для заполнения его прямоугольной области с цветом фона. Более сложное содержание может быть представлено путем разделения на подклассы UIView и реализация необходимого получения и обработки событий кодирует себя. Платформа UIKit также включает ряд стандартных подклассов, которые колеблются от простых кнопок до сложных таблиц и могут использоваться как есть. Например, a UILabel объект рисует текстовую строку и a UIImageView объект рисует изображение.
Поскольку объекты представления являются основным способом, которым Ваше приложение взаимодействует с пользователем, у них есть много ответственности. Вот только некоторые:
Рисование и анимация
Представления рисуют содержание в своей прямоугольной области с помощью технологий, таких как UIKit, Базовая Графика и OpenGL ES.
Некоторые свойства представления могут быть анимированы к новым значениям.
Расположение и управление подпредставлением
Представление может содержать нуль или больше подпредставлений.
Каждое представление определяет свое собственное поведение изменения размеров значения по умолчанию в связи с его родительским представлением.
Представление может определить размер и позицию его подпредставлений по мере необходимости.
Обработка событий
Представление является респондентом и может обработать сенсорные события и другие события, определенные
UIResponderкласс.Представления могут использовать
addGestureRecognizer:метод для установки устройств распознавания жеста для обработки общих жестов.
Представления могут встроить другие представления и создать сложные визуальные иерархии. Это создает отношения отцов и детей между встраиваемым представлением (известный как подпредставление) и родительским представлением, делающим встраивание (известный как суперпредставление). Обычно, видимая область подпредставления не отсекается к границам ее суперпредставления, но в iOS можно использовать clipsToBounds свойство для изменения того поведения. Родительское представление может содержать любое число подпредставлений, но каждое подпредставление имеет только одно суперпредставление, которое ответственно за расположение его подпредставлений соответственно.
Геометрия представления определяется frame, bounds, и center свойства. frame определяет источник и размерности представления в системе координат его суперпредставления и обычно используется во время расположения для корректировки размера или позиции представления. center свойство может использоваться для корректировки позиции представления, не изменяя его размер. Границы определяют внутренние размеры представления, поскольку оно видит их и используется почти исключительно в пользовательском коде для прорисовки. Часть размера frame и прямоугольники границ соединены так, чтобы изменение размера любого прямоугольника обновило размер обоих.
Для получения дальнейшей информации о том, как использовать UIView класс, см. Руководство по программированию Представления для iOS.
Создание представления
Для создания представления программно можно использовать код как следующее:
CGRect viewRect = CGRectMake(10, 10, 100, 100);UIView* myView = [[UIView alloc] initWithFrame:viewRect];
Этот код создает представление и располагает его в точку (10, 10) в системе координат ее суперпредставления (как только оно добавляется к тому суперпредставлению). Для добавления подпредставления к другому представлению Вы используете addSubview: метод. В iOS одноуровневые представления могут перекрыть друг друга без любых проблем, позволив сложное размещение представления. addSubview: метод помещает указанное представление поверх других одноуровневых элементов. Можно указать относительный z-порядок подпредставления путем добавления его с помощью insertSubview:aboveSubview: и insertSubview:belowSubview: методы. Можно также обмениваться позицией уже добавленных подпредставлений с помощью exchangeSubviewAtIndex:withSubviewAtIndex: метод.
При создании представления важно присвоить надлежащее значение autoresizingMask свойство для обеспечения представления изменяет размеры правильно. Представление, изменяющее размеры прежде всего, происходит, когда ориентация интерфейса Вашего приложения изменяется, но это может произойти в других случаях также. Например, вызов setNeedsLayout метод вынуждает Ваше представление обновить свое расположение.
Цикл рисования представления
Получение представления происходит по мере необходимости. Когда представление сначала показано, или когда все или часть его становятся видимыми вследствие изменений макета, система просит, чтобы представление нарисовало свое содержание. Для представлений, содержащих пользовательское содержание с помощью UIKit или Базовой Графики, системных вызовов представление drawRect: метод. Ваша реализация этого метода ответственна за вовлечение содержания представления в текущий графический контекст, устанавливающийся системой автоматически до вызова этого метода. Это создает статическое визуальное представление содержания Вашего представления, которое может тогда быть выведено на экран на экране.
Когда фактическое содержание Ваших изменений представления, это - Ваша ответственность уведомить систему, что должно быть перерисовано Ваше представление. Вы делаете это путем вызова представления setNeedsDisplay или setNeedsDisplayInRect: метод представления. Эти методы позволяют системе знать, что она должна обновить представление во время следующего цикла получения. Поскольку это ожидает до следующего цикла получения, который обновит представление, можно вызвать эти методы на многократных представлениях для обновления их одновременно.
Для получения дальнейшей информации о цикле рисования представления и роли Ваши представления имеют в этом цикле, видят Руководство по программированию Представления для iOS.
Анимации
Изменения в нескольких свойствах представления могут быть анимированы — т.е. изменение свойства создает анимацию, передающую изменение пользователю за короткий период времени. UIView класс выполняет большую часть работы выполнения фактических анимаций, но необходимо все еще указать, какие изменения свойства Вы хотите быть анимированными. Существует два различных способа инициировать анимации:
В iOS 4 и позже, используйте основанные на блоке методы анимации. (Рекомендуемый)
Используйте начинать/фиксировать методы анимации.
Основанные на блоке методы анимации (такой как animateWithDuration:animations:) значительно упростите создание анимаций. С одним вызовом метода Вы указываете анимации, которые будут выполняться и опции для анимации. Однако основанные на блоке анимации доступны только в iOS 4 и позже. Если Ваше выполнение приложения на более ранних версиях iOS, необходимо использовать beginAnimations:context: и commitAnimations методы класса отметить начало и окончание Ваших анимаций.
Следующие свойства UIView класс animatable:
Для получения дополнительной информации о том, как сконфигурировать анимации, см. Руководство по программированию Представления для iOS.
Поточная обработка соображений
Манипуляции к пользовательскому интерфейсу Вашего приложения должны произойти на основном потоке. Таким образом необходимо всегда вызывать методы UIView класс от кода, работающего в основном потоке Вашего приложения. Единственное время это может не быть строго необходимо, при создании самого объекта представления, но все другие манипуляции должны произойти на основном потоке.
Разделение на подклассы примечаний
UIView класс является ключевой точкой разделения на подклассы для визуального содержания, также требующего взаимодействия с пользователем. Несмотря на то, что существует много серьезных оснований разделить на подклассы UIView, рекомендуется сделать так только когда основное UIView класс или стандартные системные представления не обеспечивают возможности, в которых Вы нуждаетесь. Разделение на подклассы требует, чтобы больше работы с Вашей стороны реализовало представление и настроило его производительность.
Для получения информации о способах избежать разделять на подклассы, посмотрите Альтернативы Разделению на подклассы.
Методы для переопределения
При разделении на подклассы UIView, существует только ряд методов, которые необходимо переопределить и много методов, которые Вы могли бы переопределить в зависимости от своих потребностей. Поскольку UIView высоконастраиваемый класс, существует также много способов реализовать сложные способы поведения представления, не переопределяя пользовательские методы, обсужденные в разделе Alternatives to Subclassing. Тем временем следующий список включает методы, Вы могли бы рассмотреть переопределение в Вашем UIView подклассы:
Инициализация:
initWithFrame:- Рекомендуется реализовать этот метод. Можно также реализовать пользовательские методы инициализации в дополнение к, или вместо, этот метод.initWithCoder:- Реализуйте этот метод, если Вы загружаете свое представление из Интерфейсного файла пера Разработчика, и Ваше представление требует пользовательской инициализации.layerClass- Реализуйте этот метод, только если Вы хотите, чтобы Ваше представление использовало различный Базовый Слой анимации для своего запоминающего устройства. Например, если Ваше мозаичное размещение использования представления для отображения большой области с возможностью прокрутки Вы могли бы хотеть переопределить этот метод и возвратитьсяCATiledLayerкласс.
Получение и печать:
drawRect:- Реализуйте этот метод, если Ваше представление рисует пользовательское содержание. Если Ваше представление не делает никакого пользовательского получения, избегите переопределять этот метод.drawRect:forViewPrintFormatter:- Реализуйте этот метод, только если Вы хотите нарисовать содержание своего представления по-другому во время печати.
Ограничения:
requiresConstraintBasedLayout- Реализуйте этот метод класса, если Ваш класс представления требует, чтобы ограничения работали должным образом.updateConstraints- Реализуйте этот метод, если Ваше представление должно создать пользовательские ограничения между Вашими подпредставлениями.alignmentRectForFrame:,frameForAlignmentRect:- Реализуйте эти методы, чтобы переопределить, как Ваши представления выровненные к другим представлениям.
Расположение:
sizeThatFits:- Реализуйте этот метод, если Вы хотите, чтобы Ваше представление имело различный размер по умолчанию, чем это обычно было бы во время изменения размеров операций. Например, Вы могли бы использовать этот метод, чтобы препятствовать тому, чтобы Ваше представление уменьшилось к точке, где подпредставления не могут быть выведены на экран правильно.layoutSubviews- Реализуйте этот метод при необходимости в более точном управлении расположением подпредставлений, чем обеспечивают или способы поведения ограничения или автоизменения размеров.didAddSubview:,willRemoveSubview:- Реализуйте эти методы по мере необходимости для отслеживания дополнений и удалений подпредставлений.willMoveToSuperview:,didMoveToSuperview- Реализуйте эти методы по мере необходимости для отслеживания перемещения текущего представления в иерархии представления.willMoveToWindow:,didMoveToWindow- Реализуйте эти методы по мере необходимости для отслеживания перемещения представления к различному окну.
Обработка событий:
touchesBegan:withEvent:,touchesMoved:withEvent:,touchesEnded:withEvent:,touchesCancelled:withEvent:- Реализуйте эти методы, если необходимо обработать сенсорные события непосредственно. (Для основанного на жесте ввода используйте устройства распознавания жеста.)gestureRecognizerShouldBegin:- Реализуйте этот метод, если Ваши сенсорные события дескрипторов представления непосредственно и могли бы хотеть препятствовать тому, чтобы присоединенные устройства распознавания жеста инициировали дополнительные действия.
Альтернативы разделению на подклассы
Много способов поведения представления могут быть сконфигурированы без потребности в разделении на подклассы. Прежде чем Вы запустите методы переопределения, рассмотрите, изменить ли ли следующие свойства, или способы поведения обеспечили бы поведение, в котором Вы нуждаетесь.
addConstraint:- Определите автоматическое поведение расположения для представления и его подпредставлений.autoresizingMask- Когда кадр суперпредставления изменяется, обеспечивает автоматическое поведение расположения. Эти способы поведения могут быть объединены с ограничениями.contentMode- Обеспечивает поведение расположения для содержания представления, в противоположностьframeиз представления. Это свойство также влияет, как содержание масштабируется для адаптации представлению и кэшируется ли это или перерисовывается.contentStretch- Определяет части представления, как являющегося поддающимся растягиванию. Это поведение обычно используется для реализации кнопок и других представлений изменяемого размера со сложными потребностями расположения, где, перерисовывая представление каждый раз влиял бы на производительность.hiddenилиalpha- Измените прозрачность представления в целом вместо того, чтобы скрыть или применить альфу к представленному содержанию Вашего представления.backgroundColor- Выберите цвет представления вместо того, чтобы рисовать тот цвет сами.Подпредставления - А не рисуют Ваше содержание с помощью a
drawRect:метод, встройте изображение и маркируйте подпредставления содержанием, которое Вы хотите представить.Устройства распознавания жеста - А не подкласс, чтобы прервать и обработать сенсорные события самостоятельно, можно использовать устройства распознавания жеста для отправки сообщения действия в целевой объект.
Анимации - Использование встроенная поддержка анимации вместо того, чтобы пытаться анимировать изменения самостоятельно. Поддержка анимации, предоставленная Базовой Анимацией, быстра и проста в использовании.
Основанные на изображении фоны - Для представлений, выводящих на экран относительно статическое содержание, рассмотрите использование a
UIImageViewобъект с устройствами распознавания жеста вместо того, чтобы разделить на подклассы и нарисовать изображение самостоятельно. Также можно также использовать обобщениеUIViewвозразите и присвойте свое изображение как содержание представленияCALayerобъект.
Анимации являются другим способом внести видимые изменения в представление, не требуя, чтобы Вы разделили на подклассы и реализовали сложный код для прорисовки. Много свойств UIView класс animatable, что означает, что изменения в тех свойствах могут инициировать сгенерированные системой анимации. Стартовые анимации требуют всего, чтобы одна строка кода указала, что должны быть анимированы любые следующие изменения. Для получения дополнительной информации о поддержке анимации представлений, посмотрите Анимации.
Для получения дополнительной информации о появлении и конфигурации поведения, займитесь Представлениями в Каталоге Пользовательского интерфейса UIKit.
-
Инициализирует и возвращает недавно выделенный объект представления с указанным прямоугольником кадра.
Параметры
aRectВозвращаемое значение
Инициализированное представление возражает или
nilесли не мог бы быть создан объект.Обсуждение
Новый объект представления должен быть вставлен в иерархию представления окна, прежде чем это сможет использоваться. При создании объекта представления программно этот метод является определяемым инициализатором для
UIViewкласс. Подклассы могут переопределить этот метод для выполнения любой пользовательской инициализации, но должны вызватьsuperв начале их реализации.Когда объекты представления впоследствии загружаются из файла пера, при использовании Интерфейсного Разработчика для разработки интерфейса, этот метод не вызывают. Объекты в файле пера перераспределены и затем инициализировали использование их
initWithCoder:метод, изменяющий атрибуты представления для соответствия атрибутов, сохраненных в файле пера. Для получения дальнейшей информации о том, как представления загружаются из файла пера, см. Руководство по программированию Ресурса.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
backgroundColorСвойствоЦвет фона представления.
Объявление
Swift
@NSCopying var backgroundColor: UIColor?Objective C
@property(nonatomic, copy) UIColor *backgroundColorОбсуждение
Изменения в этом свойстве могут быть анимированы. Значение по умолчанию
nil, который приводит к цвету прозрачного фона.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
hiddenСвойствоБулево значение, определяющее, скрыто ли представление.
Объявление
Swift
var hidden: BoolObjective C
@property(nonatomic, getter=isHidden) BOOL hiddenОбсуждение
Установка значения этого свойства к
YEStrueскрывает получатель и установку его кNOfalseпоказывает получатель. Значение по умолчаниюNOfalse.Скрытое представление исчезает из своего окна и не получает входные события. Это остается в списке его суперпредставления подпредставлений, однако, и участвует в автоизменении размеров, как обычно. Сокрытие представления с подпредставлениями имеет эффект сокрытия тех подпредставлений и любых потомков представления, которых они могли бы иметь. Этот эффект неявен и не изменяет скрытое состояние потомков получателя.
Сокрытие представления, которое является текущим первым респондентом окна, заставляет следующее допустимое ключевое представление представления становиться новым первым респондентом.
Значение этого свойства отражает состояние получателя только и не составляет состояние наследователей получателя в иерархии представления. Таким образом это свойство может быть
NOfalseесли наследователь скрыт, но получатель может все еще быть скрыт.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
alphaСвойствоАльфа-значение представления.
Обсуждение
Значение этого свойства является числом с плавающей точкой в диапазоне
0.0к1.0, где0.0представляет полностью прозрачный и1.0представляет полностью непрозрачный. Это значение влияет только на текущее представление и не влияет ни на одно из его встроенных подпредставлений.Изменения в этом свойстве могут быть анимированы.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
opaqueСвойствоБулево значение, определяющее, непрозрачно ли представление.
Объявление
Swift
var opaque: BoolObjective C
@property(nonatomic, getter=isOpaque) BOOL opaqueОбсуждение
Это свойство обеспечивает подсказку для системы получения относительно того, как это должно обработать представление. Если установлено в
YEStrue, система получения обрабатывает представление как полностью непрозрачное, который позволяет системе получения оптимизировать некоторые операции рисования и улучшать производительность. Если установлено вNOfalse, система получения обычно составляет представление с другим содержанием. Значение по умолчанию этого свойстваYEStrue.Непрозрачное представление, как ожидают, заполнит свои границы полностью непрозрачным содержанием — т.е. содержание должно иметь альфа-значение
1.0. Если представление непрозрачно и или не заполняет свои границы или содержит полно или частичное прозрачное содержание, результаты непредсказуемы. Необходимо всегда устанавливать значение этого свойства кNOfalseесли представление полностью или частично прозрачно.Только необходимо установить значение для непрозрачного свойства для подклассов
UIViewто получение их собственное содержание с помощьюdrawRect:метод. Непрозрачное свойство не имеет никакого эффекта для предоставленных классов системы такой какUIButton,UILabel,UITableViewCell, и т.д.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
tintColorСвойствоПервое значение цвета оттенка не по умолчанию в иерархии представления, возрастающей от и начиная с самого представления.
Объявление
Swift
var tintColor: UIColor!Objective C
@property(nonatomic, retain) UIColor *tintColorОбсуждение
Если система не может найти цвет не по умолчанию в иерархии, значение этого свойства является определенным с помощью системы цветом вместо этого.
Если представление
tintAdjustmentModeзначение свойстваUIViewTintAdjustmentModeDimmed, тогдаtintColorзначение свойства автоматически недоступно.Обновить рендеринг подпредставления, когда это свойство изменяется, переопределение
tintColorDidChangeметод.Цвета, которые являются цветами образца (как описано в Ссылке класса UIColor) не поддерживаются.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
См. также
-
tintAdjustmentModeСвойствоПервый режим корректировки оттенка не по умолчанию оценивает в иерархии представления, возрастающей от и начиная с самого представления.
Объявление
Swift
var tintAdjustmentMode: UIViewTintAdjustmentModeObjective C
@property(nonatomic) UIViewTintAdjustmentMode tintAdjustmentModeОбсуждение
Когда значение этого свойства
UIViewTintAdjustmentModeDimmed, значениеtintColorсвойство изменяется для обеспечения недоступного появления.Если система не может найти значение не по умолчанию в иерархии подпредставления при запросах этого свойства значение
UIViewTintAdjustmentModeNormal.Когда значение этого свойства изменяется (или изменением значения представления или одним из изменения значений его суперпредставления), - системные вызовы
tintColorDidChangeметод, чтобы позволить представлению обновлять свой рендеринг.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
-
clipsToBoundsСвойствоБулево значение, определяющее, ограничены ли подпредставления границами представления.
Объявление
Swift
var clipsToBounds: BoolObjective C
@property(nonatomic) BOOL clipsToBoundsОбсуждение
Установка этого значения к
YEStrueпричины подпросматривают, чтобы быть отсеченными к границам получателя. Если установлено вNOfalse, подпредставления, кадры которых расширяются вне видимых границ получателя, не отсекаются. Значение по умолчаниюNOfalse.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
clearsContextBeforeDrawingСвойствоБулево значение, определяющее, должны ли границы представления быть автоматически очищены перед получением.
Объявление
Swift
var clearsContextBeforeDrawing: BoolObjective C
@property(nonatomic) BOOL clearsContextBeforeDrawingОбсуждение
Когда установлено в
YEStrue, буфер получения автоматически очищен к прозрачному черному цвету передdrawRect:метод вызывают. Это поведение гарантирует, что нет никаких визуальных артефактов, перенесенных, когда перерисовывается содержание представления. Если представлениеopaqueсвойство также установлено вYEStrue,backgroundColorсвойство представления не должно бытьnilили рисование ошибок может произойти. Значение по умолчанию этого свойстваYEStrue.Если Вы устанавливаете значение этого свойства к
NOfalse, Вы ответственны за обеспечение содержания представления, нарисованы должным образом в ВашемdrawRect:метод. Если Ваш код для прорисовки уже в большой степени оптимизирован, устанавливание этого свойстваNOfalseкогда только часть представления, возможно, должна была бы быть перерисована, может улучшить производительность, особенно во время прокрутки.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
maskViewСвойствоДополнительное представление, альфа-канал которого используется для маскирования содержания представления.
Обсуждение
Альфа-канал представления определяет, сколько из содержания и фона представления показывает через. Полностью или частично непрозрачные пиксели позволяют базовому содержанию показывать через, но блок полностью прозрачных пикселей то содержание.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
Возвращается класс раньше создавал уровень для экземпляров этого класса.
Объявление
Swift
class func layerClass() -> AnyClassObjective C
+ (Class)layerClassВозвращаемое значение
Класс раньше создавал Базовый Слой анимации представления.
Обсуждение
Этот метод возвращается
CALayerобъект класса по умолчанию. Подклассы могут переопределить этот метод и возвратить различный класс уровня по мере необходимости. Например, если Ваше мозаичное размещение использования представления для отображения большой области с возможностью прокрутки Вы могли бы хотеть переопределить этот метод и возвратитьсяCATiledLayerкласс.Этот метод вызывают только один раз рано в создании представления для создания соответствующего расположенного на слое объекта.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
layerСвойствоБазовый Слой анимации представления используется для рендеринга. (только для чтения)
Объявление
Swift
var layer: CALayer { get }Objective C
@property(nonatomic, readonly, retain) CALayer *layerОбсуждение
Это свойство никогда не
nil. Фактический класс объекта определяется значением, возвращеннымlayerClassметод. Представление является делегатом уровня.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
userInteractionEnabledСвойствоБулево значение, определяющее, проигнорированы ли пользовательские события и удалены из очереди событий.
Объявление
Swift
var userInteractionEnabled: BoolObjective C
@property(nonatomic, getter=isUserInteractionEnabled) BOOL userInteractionEnabledОбсуждение
Когда установлено в
NOfalse, пользовательские события — такие как касание и клавиатура — предназначенный для представления проигнорированы и удалены из очереди событий. Когда установлено вYEStrue, события обычно поставляются представлению. Значение по умолчанию этого свойстваYEStrue.Во время анимации взаимодействие с пользователем временно недоступно для всех представлений, вовлеченных в анимацию, независимо от значения в этом свойстве. Можно отключить это поведение путем указания
UIViewAnimationOptionAllowUserInteractionопция при конфигурировании анимации.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
multipleTouchEnabledСвойствоБулево значение, указывающее, обрабатывает ли получатель мультисенсорные события.
Объявление
Swift
var multipleTouchEnabled: BoolObjective C
@property(nonatomic, getter=isMultipleTouchEnabled) BOOL multipleTouchEnabledОбсуждение
Когда установлено в
YEStrue, получатель получает все касания, связанные с мультисенсорной последовательностью. Когда установлено вNOfalse, получатель получает только первое сенсорное событие в мультисенсорной последовательности. Значение по умолчанию этого свойстваNOfalse.Когда это свойство, другие представления в том же окне могут все еще получить сенсорные события
NOfalse. Если Вы хотите, чтобы это представление обработало мультисенсорные события исключительно, установите значения и этого свойства иexclusiveTouchсвойство кYEStrue.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
exclusiveTouchСвойствоБулево значение, указывающее, обрабатывает ли получатель сенсорные события исключительно.
Объявление
Swift
var exclusiveTouch: BoolObjective C
@property(nonatomic, getter=isExclusiveTouch) BOOL exclusiveTouchОбсуждение
Установка этого свойства к
YEStrueзаставляет получатель блокировать поставку сенсорных событий к другим представлениям в том же окне. Значение по умолчанию этого свойстваNOfalse.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
frameСвойствоПрямоугольник кадра, описывающий расположение представления и размер в системе координат его суперпредставления.
Обсуждение
Этот прямоугольник определяет размер и позицию представления в системе координат его суперпредставления. Вы используете этот прямоугольник во время операций расположения, чтобы измерить и расположить представление. Установка этого свойства изменяет точку, указанную
centerсвойство и размер вboundsпрямоугольник соответственно. Координаты прямоугольника кадра всегда указываются в точках.Изменение прямоугольника кадра автоматически восстанавливает изображение получателя, не вызывая
drawRect:метод. Если Вы хотитеdrawRect:метод, вызванный, когда прямоугольник кадра изменяется, установилcontentModeсвойство кUIViewContentModeRedraw.Изменения в этом свойстве могут быть анимированы. Однако, если
transformсвойство содержит неидентификационные данные, преобразовывают, значениеframeсвойство не определено и не должно быть изменено. В этом случае можно изменить местоположение представления с помощьюcenterсвойство и корректирует размер с помощьюboundsсвойство вместо этого.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
boundsСвойствоПрямоугольник границ, описывающий расположение представления и размер в его собственной системе координат.
Обсуждение
На экране прямоугольник границ представляет ту же видимую часть представления как его прямоугольник кадра. По умолчанию источник прямоугольника границ установлен в (0, 0), но можно изменить это значение для отображения различных частей представления. Размер прямоугольника границ связывается с размером прямоугольника кадра, так, чтобы изменения в одном влиянии другой. Изменение размера границ увеличивает или уменьшает представление относительно своей центральной точки. Координаты прямоугольника границ всегда указываются в точках.
Изменение прямоугольника кадра автоматически восстанавливает изображение получателя, не вызывая
drawRect:метод. Если Вы хотитеdrawRect:метод, вызванный, когда прямоугольник кадра изменяется, установилcontentModeсвойство кUIViewContentModeRedraw.Изменения в этом свойстве могут быть анимированы.
Источник границ по умолчанию
(0,0)и размер совпадает с размером прямоугольника кадра.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
centerСвойствоЦентр кадра.
Обсуждение
Центр указан в системе координат его суперпредставления и измеряется в точках. Установка этого свойства изменяет значения
frameсвойства соответственно.Изменение прямоугольника кадра автоматически восстанавливает изображение получателя, не вызывая
drawRect:метод. Если Вы хотитеdrawRect:метод, вызванный, когда прямоугольник кадра изменяется, установилcontentModeсвойство кUIViewContentModeRedraw.Изменения в этом свойстве могут быть анимированы. Используйте
beginAnimations:context:метод класса начаться иcommitAnimationsметод класса закончить блок анимации.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
transformСвойствоУказывает, что преобразование применилось к получателю относительно центра его границ.
Объявление
Swift
var transform: CGAffineTransformObjective C
@property(nonatomic) CGAffineTransform transformОбсуждение
Источник преобразования является значением
centerсвойство, или уровеньanchorPointсвойство, если это было изменено. (Используйтеlayerсвойство для получения базового Базового объекта Слоя анимации.) Значение по умолчаниюCGAffineTransformIdentity.Изменения в этом свойстве могут быть анимированы. Используйте
beginAnimations:context:метод класса начаться иcommitAnimationsметод класса закончить блок анимации. Значение по умолчанию - то, что центральное значение (или точка привязки, если изменено)Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
superviewСвойствоСуперпредставление получателя, или
nilесли это не имеет ни одного. (только для чтения)Объявление
Swift
var superview: UIView? { get }Objective C
@property(nonatomic, readonly) UIView *superviewОператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
subviewsСвойствоНепосредственные подпредставления получателя. (только для чтения)
Объявление
Swift
var subviews: [AnyObject] { get }Objective C
@property(nonatomic, readonly, copy) NSArray *subviewsОбсуждение
Можно использовать это свойство для получения подпредставлений, связанных с пользовательскими иерархиями представления. Порядок подпредставлений в массиве отражает их видимый порядок на экран с представлением в индексе 0, являющемся самым задним представлением.
Для сложных представлений, объявленных в UIKit и других системных платформах, любые подпредставления представления обычно считают частными и подлежащими изменению в любое время. Поэтому Вы не должны пытаться получить или изменить подпредставления для этих типов предоставленных систему представлений. Если Вы делаете, Ваш код может повредиться во время будущего системного обновления.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
windowСвойствоОбъект окна получателя, или
nilесли это не имеет ни одного. (только для чтения)Объявление
Swift
var window: UIWindow? { get }Objective C
@property(nonatomic, readonly) UIWindow *windowОбсуждение
Это свойство
nilесли представление еще не было добавлено к окну.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Добавляет представление до конца списка получателя подпредставлений.
Параметры
viewПредставление, которое будет добавлено. Будучи добавленным, это представление появляется поверх любых других подпредставлений.
Обсуждение
Этот метод устанавливает сильную ссылку к
viewи устанавливает его следующего респондента в получатель, который является его новым суперпредставлением.Представления могут иметь только одно суперпредставление. Если
viewуже имеет суперпредставление, и то представление не является получателем, этот метод удаляет предыдущее суперпредставление прежде, чем сделать получатель его новым суперпредставлением.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Перемещает указанное подпредставление так, чтобы это появилось поверх своих одноуровневых элементов.
Объявление
Swift
func bringSubviewToFront(_view: UIView)Objective C
- (void)bringSubviewToFront:(UIView *)viewПараметры
viewПодпредставление для перемещения в переднюю сторону.
Обсуждение
Этот метод перемещает указанное представление до конца массива представлений в
subviewsсвойство.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Перемещает указанное подпредставление так, чтобы это появилось позади своих одноуровневых элементов.
Объявление
Swift
func sendSubviewToBack(_view: UIView)Objective C
- (void)sendSubviewToBack:(UIView *)viewПараметры
viewПодпредставление для перемещения в спину.
Обсуждение
Этот метод перемещает указанное представление в начало массива представлений в
subviewsсвойство.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Расцепляет представление от его суперпредставления и его окна, и удаляет его из цепочки респондента.
Объявление
Swift
func removeFromSuperview()Objective C
- (void)removeFromSuperviewОбсуждение
Если суперпредставление представления не
nil, суперпредставление выпускает представление.Вызов этого метода удаляет любые ограничения, относящиеся к представлению, которое Вы удаляете, или относящемуся к любому представлению в поддереве представления, которое Вы удаляете.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Вставляет подпредставление в указанном индексе.
Объявление
Objective C
- (void)insertSubview:(UIView *)viewatIndex:(NSInteger)indexПараметры
viewПредставление для вставки. Это значение не может быть
nil.indexИндекс в массиве
subviewsсвойство, в котором можно вставить представление. Индексы подпредставления запускаются в0и не может быть больше, чем число подпредставлений.Обсуждение
Этот метод устанавливает сильную ссылку к
viewи устанавливает его следующего респондента в получатель, который является его новым суперпредставлением.Представления могут иметь только одно суперпредставление. Если
viewуже имеет суперпредставление, и то представление не является получателем, этот метод удаляет предыдущее суперпредставление прежде, чем сделать получатель его новым суперпредставлением.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Вставляет представление выше другого представления в иерархии представления.
Объявление
Objective C
- (void)insertSubview:(UIView *)viewaboveSubview:(UIView *)siblingSubviewПараметры
viewПредставление для вставки. Это удалено из его суперпредставления, если это не одноуровневый элемент
siblingSubview.siblingSubviewОдноуровневое представление, которое будет позади вставленного представления.
Обсуждение
Этот метод устанавливает сильную ссылку к
viewи устанавливает его следующего респондента в получатель, который является его новым суперпредставлением.Представления могут иметь только одно суперпредставление. Если
viewуже имеет суперпредставление, и то представление не является получателем, этот метод удаляет предыдущее суперпредставление прежде, чем сделать получатель его новым суперпредставлением.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Вставляет представление ниже другого представления в иерархии представления.
Объявление
Objective C
- (void)insertSubview:(UIView *)viewbelowSubview:(UIView *)siblingSubviewПараметры
viewПредставление для вставки ниже другого представления. Это удалено из его суперпредставления, если это не одноуровневый элемент
siblingSubview.siblingSubviewОдноуровневое представление, которое будет выше вставленного представления.
Обсуждение
Этот метод устанавливает сильную ссылку к
viewи устанавливает его следующего респондента в получатель, который является его новым суперпредставлением.Представления могут иметь только одно суперпредставление. Если
viewуже имеет суперпредставление, и то представление не является получателем, этот метод удаляет предыдущее суперпредставление прежде, чем сделать получатель его новым суперпредставлением.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Обменивается подпредставлениями в указанных индексах.
Объявление
Параметры
index1Индекс первого подпредставления в получателе.
index2Индекс второго подпредставления в получателе.
Обсуждение
Каждый индекс представляет позицию соответствующего представления в массиве в
subviewsсвойство. Индексы подпредставления запускаются в0и не может быть больше, чем число подпредставлений. Этот метод не изменяет суперпредставление ни одного представления, но просто загружает их позицииsubviewsмассив.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Возвращает булево значение, указывающее, является ли получатель подпредставлением высказанного мнения или идентичный тому представлению.
Объявление
Swift
func isDescendantOfView(_view: UIView) -> BoolObjective C
- (BOOL)isDescendantOfView:(UIView *)viewПараметры
viewПредставление для тестирования против иерархии представления получателя.
Возвращаемое значение
YEStrueесли получатель является непосредственным или удаленным подпредставлениемviewили еслиviewсам получатель; иначеNOfalse.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
autoresizingMaskСвойствоЦелочисленная битовая маска, определяющая, как получатель изменяет размеры себя, когда изменяются границы его суперпредставления.
Объявление
Swift
var autoresizingMask: UIViewAutoresizingObjective C
@property(nonatomic) UIViewAutoresizing autoresizingMaskОбсуждение
Когда границы представления изменяются, то представление автоматически изменяет размеры своих подпредставлений согласно маске автоизменения размеров каждого подпредставления. Вы указываете значение этой маски путем объединения констант, описанных в
UIViewAutoresizingиспользование оператора битового «ИЛИ» C. Объединение этих констант позволяет Вам указать, какие размерности представления должны расти или уменьшиться относительно суперпредставления. Значение по умолчанию этого свойстваUIViewAutoresizingNone, который указывает, что представление не должно быть изменено вообще.Когда больше чем одна опция вдоль той же оси установлена, поведение по умолчанию состоит в том, чтобы распределить различие в размере пропорционально среди гибких частей. Чем больше гибкая часть, относительно других гибких частей, тем больше это, вероятно, будет расти. Например, предположите, что это свойство включает
UIViewAutoresizingFlexibleWidthиUIViewAutoresizingFlexibleRightMarginконстанты, но не включаютUIViewAutoresizingFlexibleLeftMarginпостоянный, таким образом указывая, что ширина левого поля представления фиксируется, но что может измениться и правое поле представления width. Таким образом, в то время как и представление width и разрыв направо от представления увеличиваются, представление кажется привязанным на левой стороне его суперпредставления.Если способы поведения автоизменения размеров не предлагают точное расположение, в котором Вы нуждаетесь для своих представлений, можно использовать пользовательское контейнерное представление и переопределить
layoutSubviewsметод для расположения подпредставлений более точно.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
autoresizesSubviewsСвойствоБулево значение, определяющее, изменяет ли получатель автоматически размеры своих подпредставлений, когда изменяются его границы.
Объявление
Swift
var autoresizesSubviews: BoolObjective C
@property(nonatomic) BOOL autoresizesSubviewsОбсуждение
Когда установлено в
YEStrue, когда его границы изменяются, получатель корректирует размер своих подпредставлений. Значение по умолчаниюYEStrue.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
contentModeСвойствоФлаг раньше определял, как представление размечает свое содержание, когда изменяются его границы.
Объявление
Swift
var contentMode: UIViewContentModeObjective C
@property(nonatomic) UIViewContentMode contentModeОбсуждение
Режим содержания указывает, как кэшированное растровое изображение уровня представления корректируется, когда изменяются границы представления. Это свойство часто используется для реализации средств управления изменяемого размера, обычно в сочетании с
contentStretchсвойство. Вместо того, чтобы перерисовать содержание представления каждый раз, можно использовать это свойство, чтобы указать, что Вы хотите масштабировать содержание (или с или без искажения) или прикрепить их к определенному споту на представлении.Для списка значений можно присвоиться к этому свойству, видеть
UIViewContentMode. Значение по умолчанию этого свойстваUIViewContentModeScaleToFill.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Прямоугольник, определяющий поддающиеся растягиванию и неподдающиеся растягиванию области представления.
Объявление
Objective C
@property(nonatomic) CGRect contentStretchОбсуждение
Вы используете это свойство, чтобы управлять, как содержание представления расширяется для заполнения его границ, когда изменено представление. Содержание, простирающееся, часто используется для анимации изменения размеров представления. Например, кнопки и другое использование средств управления, простирающееся для поддержания хрустящий картофель, граничат, позволяя средним частям управления расширить и заполнить свободное место.
Значения, которые Вы указываете для этого прямоугольника, должны быть нормализованы к диапазону
0.0к1.0. Эти значения тогда масштабируются к размеру содержания представления для получения надлежащих пиксельных значений. Значение по умолчанию для этого прямоугольника возникает(0.0, 0.0)и размер(1.0, 1.0). Это отражает прямоугольник, поддающаяся растягиванию часть которого охватывает все содержание.Оператор импорта
Objective C
@import UIKit;Доступность
Доступный в iOS 3.0 и позже.
Осуждаемый в iOS 6.0.
-
Просит представление вычислять и возвращать размер что лучшие адаптации указанный размер.
Объявление
Параметры
sizeРазмер, для которого представление должно вычислить свой наиболее подходящий размер.
Возвращаемое значение
Новый размер, соответствующий подпредставлениям получателя.
Обсуждение
Реализация по умолчанию этого метода возвращает существующий размер представления. Подклассы могут переопределить этот метод для возврата пользовательского значения на основе желаемого расположения любых подпредставлений. Например, a
UISwitchвозразите возвращает значение фиксированного размера, представляющее стандартный размер представления переключателя и aUIImageViewвозразите возвращает размер изображения, которое он в настоящее время выводит на экран.Этот метод не изменяет размеры получателя.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Изменяет размеры и перемещает представление получателя, таким образом, оно просто включает свои подпредставления.
Объявление
Swift
func sizeToFit()Objective C
- (void)sizeToFitОбсуждение
Вызовите этот метод, когда Вы хотите изменить размеры текущего представления так, чтобы это использовало большинство, ассигнуют сумму в размере пространства. Определенные представления UIKit изменяют размеры себя согласно своим собственным внутренним потребностям. В некоторых случаях, если представление не имеет суперпредставления, оно может измерить себя к экранным границам. Таким образом, если Вы хотите, чтобы высказанное мнение измерило себя к своему родительскому представлению, необходимо добавить его к родительскому представлению прежде, чем вызвать этот метод.
Вы не должны переопределять этот метод. Если Вы хотите изменить информацию о калибровке значения по умолчанию для своего представления, переопределите
sizeThatFits:вместо этого. Тот метод выполняет любые необходимые вычисления и возвращает их этому методу, тогда вносящему изменение.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Размечает подпредставления.
Объявление
Swift
func layoutSubviews()Objective C
- (void)layoutSubviewsОбсуждение
Реализация по умолчанию этого метода ничего не делает на iOS 5.1 и ранее. Иначе, реализация по умолчанию использует любые ограничения, которые Вы установили для определения размера и позиции любых подпредставлений.
Подклассы могут переопределить этот метод по мере необходимости для выполнения более точного расположения их подпредставлений. Необходимо переопределить этот метод, только если автоизменение размеров и способы поведения на основе ограничений подпредставлений не предлагают поведения, которое Вы хотите. Можно использовать реализацию для установки прямоугольников кадра подпредставлений непосредственно.
Вы не должны вызывать этот метод непосредственно. Если Вы хотите вызвать обновление расположения, вызовите
setNeedsLayoutметод вместо этого, чтобы сделать так до следующего обновления получения. Если Вы хотите обновить расположение своих представлений сразу, вызовитеlayoutIfNeededметод.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Лишает законной силы текущий макет получателя и инициировал обновление расположения во время следующего цикла обновления.
Объявление
Swift
func setNeedsLayout()Objective C
- (void)setNeedsLayoutОбсуждение
Вызовите этот метод на основном потоке своего приложения, когда Вы захотите скорректировать расположение подпредставлений представления. Этот метод сразу обращает внимание на запрос и возвраты. Поскольку этот метод не вызывает незамедлительное обновление, но вместо этого ожидает следующего цикла обновления, можно использовать его для лишения законной силы расположения многократных представлений, прежде чем будет обновлено любое из тех представлений. Это поведение позволяет Вам консолидировать все свои обновления расположения к одному циклу обновления, который обычно лучше для производительности.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Сразу размечает подпредставления.
Объявление
Swift
func layoutIfNeeded()Objective C
- (void)layoutIfNeededОбсуждение
Используйте этот метод для принуждения расположения подпредставлений перед получением. Используя представление, получающее сообщение как корневое представление, этот метод размечает поддерево представления, запускающееся в корне.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Возвраты, зависит ли получатель от системы расположения на основе ограничений.
Объявление
Swift
class func requiresConstraintBasedLayout() -> BoolObjective C
+ (BOOL)requiresConstraintBasedLayoutВозвращаемое значение
YEStrueесли представление должно быть в окне с помощью расположения на основе ограничений для функционирования должным образом,NOfalseиначе.Обсуждение
Пользовательские представления должны переопределить это для возврата
YEStrueесли они не могут расположение правильно с помощью автоизменения размеров.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Возвращает булево значение, указывающее, переводится ли маска автоизменения размеров представления в ограничения для системы расположения на основе ограничений.
Объявление
Swift
func translatesAutoresizingMaskIntoConstraints() -> BoolObjective C
- (BOOL)translatesAutoresizingMaskIntoConstraintsВозвращаемое значение
YEStrueесли маска автоизменения размеров представления переводится в ограничения для системы расположения на основе ограничений,NOfalseиначе.Обсуждение
Если это - значение,
YEStrue, суперпредставление представления смотрит на маску автоизменения размеров представления, производит ограничения, реализующие его, и добавляет те ограничения к себе (суперпредставление).Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Наборы, должна ли маска автоизменения размеров представления быть переведена в ограничения для системы расположения на основе ограничений.
Объявление
Swift
func setTranslatesAutoresizingMaskIntoConstraints(_flag: Bool)Objective C
- (void)setTranslatesAutoresizingMaskIntoConstraints:(BOOL)flagПараметры
flagYEStrueесли маска автоизменения размеров представления должна быть переведена в ограничения для системы расположения на основе ограничений,NOfalseиначе.Обсуждение
Поскольку маска автоизменения размеров естественно дает начало ограничениям, полностью указывающим позицию представления, любое представление, что Вы хотите применить более гибкие ограничения к, должно быть установлено проигнорировать свою маску автоизменения размеров с помощью этого метода. Необходимо вызвать этот метод сами для программно создаваемых представлений. Представления создали использование инструмента, позволяющего устанавливать ограничения уже, должен иметь этот набор.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Возвращает ограничения, сохраненные представлением.
Возвращаемое значение
Ограничения сохранены представлением.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Добавляет ограничение на расположение представления получения или его подпредставлений.
Объявление
Swift
func addConstraint(_constraint: NSLayoutConstraint)Objective C
- (void)addConstraint:(NSLayoutConstraint *)constraintПараметры
constraintОграничение, которое будет добавлено к представлению. Ограничение может только сослаться на само представление или его подпредставления.
Обсуждение
Ограничение должно включить только представления, которые являются в объеме представления получения. В частности любые включенные представления должны быть самим или представлением получения или подпредставлением представления получения. Ограничения, добавляющиеся к представлению, как говорят, сохранены тем представлением. Система координат, используемая при оценке ограничения, является системой координат представления, содержащего ограничение.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Добавляют многократные ограничения на расположение представления получения или его подпредставлений.
Объявление
Swift
func addConstraints(_constraints: [AnyObject])Objective C
- (void)addConstraints:(NSArray *)constraintsПараметры
constraintsМассив ограничений, которые будут добавлены к представлению. Все ограничения могут только сослаться на само представление или его подпредставления.
Обсуждение
Все ограничения должны включить только представления, которые являются в объеме представления получения. В частности любые включенные представления должны быть самим или представлением получения или подпредставлением представления получения. Ограничения, добавляющиеся к представлению, как говорят, сохранены тем представлением. Система координат, используемая при оценке каждого ограничения, является системой координат представления, содержащего ограничение.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Удаляет указанное ограничение из представления.
Объявление
Swift
func removeConstraint(_constraint: NSLayoutConstraint)Objective C
- (void)removeConstraint:(NSLayoutConstraint *)constraintПараметры
constraintОграничение для удаления. Удаление ограничения, не сохраненного представлением, не имеет никакого эффекта.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Удаляет указанные ограничения из представления.
Объявление
Swift
func removeConstraints(_constraints: [AnyObject])Objective C
- (void)removeConstraints:(NSArray *)constraintsПараметры
constraintsОграничения для удаления.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Возвращает размер представления, удовлетворяющего ограничения, которые это содержит.
Объявление
Параметры
targetSizeУказывает, хотите ли Вы самый маленький или самый большой размер, встречающий ограничения. Посмотрите Подходящий Размер для принятых значений.
Возвращаемое значение
Размер представления, удовлетворяющего ограничения, которые это содержит.
Обсуждение
Определяет лучший размер представления, рассматривая все ограничения, которые это содержит и те из его подпредставлений.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
systemLayoutSizeFittingSize (_: withHorizontalFittingPriority:verticalFittingPriority:) - systemLayoutSizeFittingSize:withHorizontalFittingPriority:verticalFittingPriority:Возвращает размер представления, удовлетворяющего ограничения, которые это содержит.
Объявление
Swift
func systemLayoutSizeFittingSize(_targetSize: CGSize, withHorizontalFittingPriorityhorizontalFittingPriority: UILayoutPriority, verticalFittingPriorityverticalFittingPriority: UILayoutPriority) -> CGSizeObjective C
- (CGSize)systemLayoutSizeFittingSize:(CGSize)targetSizewithHorizontalFittingPriority:(UILayoutPriority)horizontalFittingPriorityverticalFittingPriority:(UILayoutPriority)verticalFittingPriorityПараметры
targetSizeУказывает, хотите ли Вы самый маленький или самый большой размер, встречающий ограничения. Посмотрите Подходящий Размер для принятых значений.
horizontalFittingPriorityГоризонтальный ограничительный приоритет.
verticalFittingPriorityВертикальный ограничительный приоритет.
Возвращаемое значение
Размер представления, удовлетворяющего ограничения, которые это содержит.
Обсуждение
Определяет лучший размер представления, рассматривая все ограничения, которые это содержит и те из его подпредставлений.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
Возвращает естественный размер для представления получения, рассматривая только свойства самого представления.
Возвращаемое значение
Размер, указывающий естественный размер для получения, просматривает на основе его внутренних свойств.
Обсуждение
Пользовательские представления обычно имеют содержание, которое они выводят на экран, которых система расположения не сознает. Переопределение этого метода позволяет пользовательскому представлению передавать к системе расположения, какой размер это хотело бы основываться на своем содержании. Этот внутренний размер должен быть независим от довольного кадр, потому что нет никакого способа динамично передать измененную ширину к системе расположения на основе измененной высоты, например.
Если пользовательское представление не имеет никакого внутреннего размера для данной размерности, оно может возвратиться
UIViewNoIntrinsicMetricдля той размерности.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Лишает законной силы внутренний размер содержания представления.
Объявление
Swift
func invalidateIntrinsicContentSize()Objective C
- (void)invalidateIntrinsicContentSizeОбсуждение
Вызовите это, когда что-то изменяется в Вашем пользовательском представлении, лишающем законной силы его внутренний размер содержания. Это позволяет системе расположения на основе ограничений брать новый внутренний размер содержания во внимание в его следующей передаче расположения.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Возвращает приоритет, с которым представление сопротивляется быть сделанным меньшим, чем его внутренний размер.
Объявление
Swift
func contentCompressionResistancePriorityForAxis(_axis: UILayoutConstraintAxis) -> UILayoutPriorityObjective C
- (UILayoutPriority)contentCompressionResistancePriorityForAxis:(UILayoutConstraintAxis)axisПараметры
axisОсь представления, которое могло бы быть сокращено.
Возвращаемое значение
Приоритет, с которым представление должно сопротивляться быть сжатым от своего внутреннего размера на указанной оси.
Обсуждение
Система расположения на основе ограничений использует эти приоритеты при определении лучшего расположения для представлений, встречающихся с ограничениями, которые потребовали бы, чтобы они были меньшими, чем их внутренний размер.
Подклассы не должны переопределять этот метод. Вместо этого пользовательские представления должны установить значения по умолчанию для своего содержания на создании, обычно к
NSLayoutPriorityDefaultLowилиNSLayoutPriorityDefaultHigh.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
setContentCompressionResistancePriority (_: forAxis:) - setContentCompressionResistancePriority:forAxis:Устанавливает приоритет, с которым представление сопротивляется быть сделанным меньшим, чем его внутренний размер.
Объявление
Swift
func setContentCompressionResistancePriority(_priority: UILayoutPriority, forAxisaxis: UILayoutConstraintAxis)Objective C
- (void)setContentCompressionResistancePriority:(UILayoutPriority)priorityforAxis:(UILayoutConstraintAxis)axisПараметры
priorityНовый приоритет.
axisОсь, для которой должен быть установлен приоритет сопротивления сжатия.
Обсуждение
Пользовательские представления должны установить значения по умолчанию для обеих ориентаций на создании, на основе их содержания, обычно к
NSLayoutPriorityDefaultLowилиNSLayoutPriorityDefaultHigh. Когда полный проект расположения требует различных компромиссов, чем естественные приоритеты представлений, используемых в интерфейсе, при создании пользовательских интерфейсов разработчик расположения может изменить эти приоритеты для определенных представлений.Подклассы не должны переопределять этот метод.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Возвращает приоритет, с которым представление сопротивляется быть сделанным больше, чем его внутренний размер.
Объявление
Swift
func contentHuggingPriorityForAxis(_axis: UILayoutConstraintAxis) -> UILayoutPriorityObjective C
- (UILayoutPriority)contentHuggingPriorityForAxis:(UILayoutConstraintAxis)axisПараметры
axisОсь представления, которое могло бы быть увеличено.
Возвращаемое значение
Приоритет, с которым представление должно сопротивляться быть увеличенным от своего внутреннего размера на указанной оси.
Обсуждение
Система расположения на основе ограничений использует эти приоритеты при определении лучшего расположения для представлений, встречающихся с ограничениями, которые потребовали бы, чтобы они были больше, чем их внутренний размер.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
См. также
-
Устанавливает приоритет, с которым представление сопротивляется быть сделанным больше, чем его внутренний размер.
Объявление
Swift
func setContentHuggingPriority(_priority: UILayoutPriority, forAxisaxis: UILayoutConstraintAxis)Objective C
- (void)setContentHuggingPriority:(UILayoutPriority)priorityforAxis:(UILayoutConstraintAxis)axisПараметры
priorityНовый приоритет.
axisОсь, для которой довольное должен быть установлен приоритет объятия.
Обсуждение
Пользовательские представления должны установить значения по умолчанию для обеих ориентаций на создании, на основе их содержания, обычно к
NSLayoutPriorityDefaultLowилиNSLayoutPriorityDefaultHigh. Когда полный проект расположения требует различных компромиссов, чем естественные приоритеты представлений, используемых в интерфейсе, при создании пользовательских интерфейсов разработчик расположения может изменить эти приоритеты для определенных представлений.Подклассы не должны переопределять этот метод.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
См. также
-
Возвращает прямоугольник выравнивания представления для данного кадра.
Объявление
Параметры
frameКадр, соответствующий прямоугольник выравнивания которого желаем.
Возвращаемое значение
Прямоугольник выравнивания для указанного кадра.
Обсуждение
Система расположения на основе ограничений использует прямоугольники выравнивания для выравнивания представлений, а не их кадра. Это позволяет пользовательским представлениям быть выровненные на основе расположения их содержания, все еще имея кадр, охватывающий любое украшение, которое они должны нарисовать вокруг их содержания, такого как тени или отражения.
Реализация по умолчанию возвращает кадр представления, измененный представлением
alignmentRectInsets. Большинство пользовательских представлений может переопределитьalignmentRectInsetsуказать расположение их содержания в их кадре. Пользовательские представления, требующие произвольных трансформаций, могут переопределитьalignmentRectForFrame:иframeForAlignmentRect:описать расположение их содержания. Эти два метода должны всегда быть инверсиями друг друга.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Возвращает кадр представления для данного прямоугольника выравнивания.
Объявление
Параметры
alignmentRectПрямоугольник выравнивания, соответствующий кадр которого желаем.
Возвращаемое значение
Кадр для указанного прямоугольника выравнивания
Обсуждение
Система расположения на основе ограничений использует прямоугольники выравнивания для выравнивания представлений, а не их кадра. Это позволяет пользовательским представлениям быть выровненные на основе расположения их содержания, все еще имея кадр, охватывающий любое украшение, которое они должны нарисовать вокруг их содержания, такого как тени или отражения.
Возвраты реализации по умолчанию
alignmentRectизмененный представлениемalignmentRectInsets. Большинство пользовательских представлений может переопределитьalignmentRectInsetsуказать расположение их содержания в их кадре. Пользовательские представления, требующие произвольных трансформаций, могут переопределитьalignmentRectForFrame:иframeForAlignmentRect:описать расположение их содержания. Эти два метода должны всегда быть инверсиями друг друга.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Возвращает вставки из кадра представления, определяющие его прямоугольник выравнивания.
Объявление
Swift
func alignmentRectInsets() -> UIEdgeInsetsObjective C
- (UIEdgeInsets)alignmentRectInsetsВозвращаемое значение
Вставки от кадра представления, определяющие его прямоугольник выравнивания.
Обсуждение
Реализация по умолчанию этого метода возвращается
NSEdgeInsetsструктура с нулевыми значениями. Пользовательские представления, рисующие украшение вокруг их содержания, должны переопределить этот метод для возврата вставок, выравнивающихся с краями содержания, исключая украшение. Это позволяет системе расположения на основе ограничений выравнивать представления на основе их содержания, а не просто их кадра.Пользовательские представления, расположение содержания которых не может быть выражено простым набором вставок, должны переопределить
alignmentRectForFrame:иframeForAlignmentRect:описать их пользовательское преобразование между прямоугольником выравнивания и кадром.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Возвращается представление раньше удовлетворяло ограничения базовой линии.
Объявление
Swift
func viewForBaselineLayout() -> UIView?Objective C
- (UIView *)viewForBaselineLayoutВозвращаемое значение
Представление ограничительная система должно использовать для удовлетворения ограничений базовой линии
Обсуждение
При создании ограничения на NSLayoutAttributeBaseline представления система выравнивается с нижней частью представления, возвращенного этим методом. Реализация по умолчанию возвращает представление получения. При переопределении этого метода возвращенное представление должно быть подпредставлением получателя.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Возвраты, нужно ли для ограничений представления обновление.
Объявление
Swift
func needsUpdateConstraints() -> BoolObjective C
- (BOOL)needsUpdateConstraintsВозвращаемое значение
YEStrueесли для ограничений представления нужно обновление,NOfalseиначе.Обсуждение
Система расположения на основе ограничений использует возвращаемое значение этого метода, чтобы определить, должно ли это вызвать
updateConstraintsна Вашем представлении как часть его нормальной передачи расположения.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
См. также
-
Средства управления, нужно ли для ограничений представления обновление.
Объявление
Swift
func setNeedsUpdateConstraints()Objective C
- (void)setNeedsUpdateConstraintsОбсуждение
Когда свойство Вашего пользовательского представления изменяется в пути, который повлиял бы на ограничения, можно вызвать этот метод, чтобы указать, что ограничения должны быть обновлены в некоторый момент в будущем. Система тогда вызовет
updateConstraintsкак часть его нормальной передачи расположения. Обновление ограничений одновременно непосредственно перед тем, как они необходимы, гарантирует, чтобы Вы напрасно не повторно вычисляли ограничения, когда многократные изменения внесены в Ваше представление промежуточные передачи расположения.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
См. также
-
Ограничения обновлений для представления.
Объявление
Swift
func updateConstraints()Objective C
- (void)updateConstraintsОбсуждение
Пользовательские представления, устанавливающие сами ограничения, должны сделать так путем переопределения этого метода. Когда Ваше пользовательское представление отмечает, что изменение было внесено в представление, лишающее законной силы одно из его ограничений, это должно сразу удалить то ограничение, и затем вызвать
setNeedsUpdateConstraintsотметить, что должны быть обновлены ограничения. Прежде чем расположение выполняется, Ваша реализацияupdateConstraintsбудет вызван, позволяя Вам проверить, что все необходимые ограничения для Вашего содержания существуют в то время, когда не изменяются свойства Вашего пользовательского представления.Вы не должны лишать законной силы ограничения как часть Вашей ограничительной фазы обновления. Вы также не должны вызывать расположение или фазу получения как часть ограничительного обновления.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Обновляет ограничения для представления получения и его подпредставлений.
Объявление
Swift
func updateConstraintsIfNeeded()Objective C
- (void)updateConstraintsIfNeededОбсуждение
Каждый раз, когда новая передача расположения инициирована для представления, система вызывает этот метод, чтобы гарантировать, что любые ограничения для представления и его подпредставлений обновляются с информацией от иерархии текущего представления и его ограничений. Если необходимо исследовать самые актуальные ограничения, этот метод вызывает автоматически система, но можно вызвать вручную.
Подклассы не должны переопределять этот метод.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
Посмотрите Автоматическое Расположение Guidefor больше подробных данных об отладке расположения на основе ограничений.
-
Возвращает ограничения, влияющие на расположение представления для данной оси.
Объявление
Swift
func constraintsAffectingLayoutForAxis(_axis: UILayoutConstraintAxis) -> [AnyObject]Objective C
- (NSArray *)constraintsAffectingLayoutForAxis:(UILayoutConstraintAxis)axisПараметры
axisОсь, для которой должны быть найдены ограничения.
Возвращаемое значение
Ограничения, влияющие на расположение представления для указанной оси.
Обсуждение
Возвращенный набор ограничений может не все включать представление явно. Ограничения, влияющие на расположение представления неявно, могут также быть включены. В то время как это обеспечивает хорошую начальную точку для отладки, нет никакой гарантии, что возвращенный набор ограничений будет включать все ограничения, оказывающие влияние на расположение представления в данной ориентации.
Этот метод должен только использоваться для отладки расположения на основе ограничений. Никакое приложение не должно поставлять с вызовами к этому методу как часть его работы.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Возвраты, указывают ли ограничения, влияющие на расположение представления не полностью, расположение представления.
Объявление
Swift
func hasAmbiguousLayout() -> BoolObjective C
- (BOOL)hasAmbiguousLayoutВозвращаемое значение
YEStrueесли расположение представления не полностью указано,NOfalseиначе.Обсуждение
Эти проверки метода, чтобы видеть, существует ли какой-либо другой кадр представление, могли бы иметь, который также удовлетворил бы ограничения на представление. Это - дорогая работа и не выполняется как часть нормального процесса создания макета, но может быть полезно при отладке, был ли данный интерфейс указан с достаточным числом ограничений для обеспечения непротиворечивого расположения.
Этот метод должен только использоваться для отладки расположения на основе ограничений. Никакое приложение не должно поставлять с вызовами к этому методу как часть его работы.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Случайным образом изменяет кадр представления с неоднозначным расположением между различными допустимыми значениями.
Объявление
Swift
func exerciseAmbiguityInLayout()Objective C
- (void)exerciseAmbiguityInLayoutОбсуждение
Этот метод случайным образом изменяет кадр представления с неоднозначным расположением между его различными допустимыми значениями, заставляя представление переместиться в интерфейс. Это упрощает визуально идентифицировать то, что допустимые кадры и могут позволить разработчику различить, какие ограничения должны быть добавлены к расположению, чтобы полностью указать расположение для представления.
Этот метод должен только использоваться для отладки расположения на основе ограничений. Никакое приложение не должно поставлять с вызовами к этому методу как часть его работы.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
layoutMarginsСвойствоИнтервал значения по умолчанию для использования при разметке содержания в представлении.
Объявление
Swift
var layoutMargins: UIEdgeInsetsObjective C
@property(nonatomic) UIEdgeInsets layoutMarginsОбсуждение
Используйте это свойство, так укажите желаемую сумму пространства (измеренный в точках) между краем представления и любыми подпредставлениями. Автоматическое расположение использует Ваши поля в качестве сигнала для размещения содержания. Например, если Вы указываете ряд горизонтальных ограничений с помощью строки формата “
|-[subview]-|”, левые и правые края подпредставления вставляются от края суперпредставления соответствующими полями расположения. Когда край Вашего представления близко к краю суперпредставления иpreservesSuperviewLayoutMarginsсвойствоYEStrue, фактические поля расположения могут быть увеличены, чтобы препятствовать тому, чтобы содержание перекрыло поля суперпредставления.Поля по умолчанию являются восемью точками на каждой стороне.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
preservesSuperviewLayoutMarginsСвойствоБулево значение, указывающее, уважает ли текущее представление также поля своего суперпредставления.
Объявление
Swift
var preservesSuperviewLayoutMargins: BoolObjective C
@property(nonatomic) BOOL preservesSuperviewLayoutMarginsОбсуждение
Когда значение этого свойства
YEStrue, поля суперпредставления также рассматривают при разметке содержания. Это поле влияет на разметки, где расстояние между краем представления и его суперпредставлением меньше, чем соответствующее поле. Например, у Вас могло бы быть довольное представление, кадр которого точно соответствует границы своего суперпредставления. Когда любое из полей суперпредставления является в области, представленной довольным представлением и его собственными полями, UIKit корректирует расположение представления содержания для уважения полей суперпредставления. Сумма корректировки является самой маленькой суммой, должен был гарантировать, что содержание также в полях суперпредставления.Значение по умолчанию этого свойства
NOfalse.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
Уведомляет представление, что изменились поля расположения.
Объявление
Swift
func layoutMarginsDidChange()Objective C
- (void)layoutMarginsDidChangeОбсуждение
Реализация по умолчанию этого метода ничего не делает. Подклассы могут переопределить этот метод и использовать его для ответа когда значение в представлении
layoutMarginsизменения свойства. Например, если Ваш подкласс представления обрабатывает расположение вручную или использует поля расположения во время получения, Вы могли бы переопределить этот метод. В обоих случаях Вы могли использовать этот метод для инициирования обновления расположения или получения.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
Рисует изображение получателя в переданном - в прямоугольнике.
Параметры
rectЧасть границ представления, которая должна быть обновлена. В первый раз, когда Ваше представление нарисовано, этот прямоугольник обычно является всеми видимыми границами Вашего представления. Однако во время последующих операций рисования, прямоугольник может указать только часть Вашего представления.
Обсуждение
Реализация по умолчанию этого метода ничего не делает. Подклассы, использующие технологии, такие как Базовая Графика и UIKit для рисования содержания их представления, должны переопределить этот метод и реализовать их код для прорисовки там. Если Ваше представление устанавливает свое содержание другими способами, Вы не должны переопределять этот метод. Например, Вы не должны переопределять этот метод, если Ваше представление просто выводит на экран цвет фона или если Ваше представление устанавливает свое содержание непосредственно с помощью объекта нижележащего слоя.
К тому времени, когда этот метод вызывают, UIKit сконфигурировал среду получения соответственно для Вашего представления, и можно просто вызвать любые методы рисования и функции, необходимо представить содержание. В частности UIKit создает и конфигурирует графический контекст для рисования и корректирует преобразование того контекста так, чтобы его источник соответствовал источник прямоугольника границ Вашего представления. Можно получить ссылку на графический контекст с помощью
UIGraphicsGetCurrentContextфункция, но не устанавливают сильную ссылку к графическому контексту, потому что это может измениться между вызовами наdrawRect:метод.Точно так же, если Вы рисуете использование OpenGL ES и
GLKViewкласс, GLKit конфигурирует базовый OpenGL контекст ES соответственно для Вашего представления прежде, чем вызвать этот метод (илиglkView:drawInRect:метод ВашегоGLKViewделегат), таким образом, можно просто дать любые команды OpenGL ES, необходимо представить содержание. Для получения дополнительной информации о том, как нарисовать использование OpenGL ES, посмотрите OpenGL Руководство по программированию ES для iOS.Необходимо ограничить любое получение прямоугольником, указанным в
rectпараметр. Кроме того, еслиopaqueсвойство Вашего представления установлено вYEStrue, ВашdrawRect:метод должен полностью заполнить указанный прямоугольник непрозрачным содержанием.Если Вы разделяете на подклассы
UIViewнепосредственно, Ваша реализация этого метода не должна вызыватьsuper. Однако при разделении на подклассы класса другого представления необходимо вызватьsuperв некоторый момент в Вашей реализации.Этот метод вызывают, когда представление сначала выведено на экран или когда событие имеет место, который лишает законной силы видимую часть представления. Вы никогда не должны вызывать этот метод непосредственно сами. Лишить законной силы часть Вашего представления, и таким образом заставить ту часть быть перерисованной, вызов
setNeedsDisplayилиsetNeedsDisplayInRect:метод вместо этого.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Отмечает весь прямоугольник границ получателя как бывший должный быть перерисованным.
Объявление
Swift
func setNeedsDisplay()Objective C
- (void)setNeedsDisplayОбсуждение
Можно использовать этот метод или
setNeedsDisplayInRect:уведомлять систему, что должно быть перерисовано содержание Вашего представления. Этот метод сразу обращает внимание на запрос и возвраты. Представление фактически не перерисовывается до следующего цикла получения, в которой точке обновляются все лишенные законной силы представления.Необходимо использовать этот метод, чтобы запросить, что представление быть перерисованным только, когда изменяются содержание или появление представления. При простом изменении геометрии представления представление обычно не перерисовывается. Вместо этого его существующее содержание корректируется на основе значения в представлении
contentModeсвойство. Восстановление изображения существующего содержания улучшает производительность путем предотвращения потребности перерисовать не изменившееся содержание.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Отмечает указанный прямоугольник получателя как бывший должный быть перерисованным.
Объявление
Swift
func setNeedsDisplayInRect(_invalidRect: CGRect)Objective C
- (void)setNeedsDisplayInRect:(CGRect)invalidRectПараметры
invalidRectПрямоугольная область получателя для маркировки как недопустимый; это должно быть указано в системе координат получателя.
Обсуждение
Можно использовать этот метод или
setNeedsDisplayуведомлять систему, что должно быть перерисовано содержание Вашего представления. Этот метод добавляет указанный прямоугольник в текущий список представления недопустимых прямоугольников и возвратов сразу. Представление фактически не перерисовывается до следующего цикла получения, в которой точке обновляются все лишенные законной силы представления.Необходимо использовать этот метод, чтобы запросить, что представление быть перерисованным только, когда изменяются содержание или появление представления. При простом изменении геометрии представления представление обычно не перерисовывается. Вместо этого его существующее содержание корректируется на основе значения в представлении
contentModeсвойство. Восстановление изображения существующего содержания улучшает производительность путем предотвращения потребности перерисовать не изменившееся содержание.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
contentScaleFactorСвойствоМасштабный коэффициент применился к представлению.
Объявление
Swift
var contentScaleFactor: CGFloatObjective C
@property(nonatomic) CGFloat contentScaleFactorОбсуждение
Масштабный коэффициент определяет, как содержание в представлении отображается от логического координатного пространства (измеренный в точках) к координатному пространству устройства (измеренный в пикселях). Это значение обычно также
1.0или2.0. Более высокие масштабные коэффициенты указывают, что каждая точка в представлении представлена больше чем на один пиксель в нижележащем слое. Например, если масштабный коэффициент2.0и тип телосложения представления является 50 x 50 точек, размер битового массива, используемого для представления того содержания, составляет 100 x 100 пикселей.Значение по умолчанию для этого свойства является масштабным коэффициентом, связанным с экраном, в настоящее время выводящим на экран представление. Если Ваше пользовательское представление реализует пользовательское
drawRect:если Вы используете, метод и связан с окном, илиGLKViewкласс для рисования OpenGL содержание ES представление рисует в полном разрешении экрана. Для системных представлений значение этого свойства может быть1.0даже на экранах высокого разрешения.В целом Вы не должны должны быть изменять значение в этом свойстве. Однако, если Ваше приложение рисует использование OpenGL ES, можно хотеть изменить масштабный коэффициент для торговли качеством изображения для рендеринга производительности. Для получения дополнительной информации о том, как скорректировать Ваш OpenGL среда рендеринга ES, посмотрите Поддерживающие Дисплеи С высокой разрешающей способностью в OpenGL Руководство по программированию ES для iOS.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 4.0 и позже.
-
Вызванный системой, когда
tintColorизменения свойства.Объявление
Swift
func tintColorDidChange()Objective C
- (void)tintColorDidChangeОбсуждение
Системные вызовы этот метод на представлении, когда Ваш код изменяет значение
tintColorсвойство на том представлении. Кроме того, системные вызовы этот метод на подпредставлении, наследовавшем измененный цвет оттенка взаимодействия.В Вашей реализации обновите представление, представляющее по мере необходимости.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
См. также
-
Возвращает средство форматирования печати для представления получения.
Объявление
Swift
func viewPrintFormatter() -> UIViewPrintFormatterObjective C
- (UIViewPrintFormatter *)viewPrintFormatterВозвращаемое значение
A
UIViewPrintFormatterобъект илиnilесли не мог бы быть создан объект. Если это успешно создается, возвращенный объект автоматически связан с этим представлением.Обсуждение
При инициировании задания печати можно вызвать этот метод для получения надлежащего объекта средства форматирования печати представления для представления. Можно использовать объект средства форматирования сконфигурировать параметры макета страницы для представления во время печати. Каждый раз, когда Вы вызываете этот метод, Вы получаете уникальный объект средства форматирования печати представления.
Для получения дополнительной информации о том, как использовать средства форматирования печати для конфигурирования поведения печати представления, см. Рисование и Печать Руководства для iOS.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 4.2 и позже.
См. также
-
Реализованный для рисования содержания представления для печати.
Объявление
Swift
func drawRect(_area: CGRect, forViewPrintFormatterformatter: UIViewPrintFormatter)Objective C
- (void)drawRect:(CGRect)areaforViewPrintFormatter:(UIViewPrintFormatter *)formatterПараметры
areaПрямоугольник, определяющий область для рисования печатаемого содержания.
formatterЭкземпляр
UIViewPrintFormatterполученный путем вызоваviewPrintFormatterметод.Обсуждение
Вы реализуете этот метод, если Вы хотите, чтобы печатное содержание представления появилось по-другому, чем его выведенное на экран содержание. Если Вы добавляете средство форматирования печати представления к заданию печати, но не реализуете этот метод, представление
drawRect:метод вызывают для обеспечения содержания для печати.Для получения дополнительной информации о том, как реализовать пользовательскую подпрограмму получения для печатного содержания, см. Рисование и Печать Руководства для iOS.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 4.2 и позже.
-
Присоединяет устройство распознавания жеста к представлению.
Объявление
Swift
func addGestureRecognizer(_gestureRecognizer: UIGestureRecognizer)Objective C
- (void)addGestureRecognizer:(UIGestureRecognizer *)gestureRecognizerПараметры
gestureRecognizerОбъект, класс которого убывает от
UIGestureRecognizerкласс. Этот параметр не должен бытьnil.Обсуждение
Присоединение устройства распознавания жеста к представлению определяет объем представленного жеста, заставляя его получить касания, протестированные на хит к тому представлению и всем его подпредставлениям. Представление устанавливает сильную ссылку к устройству распознавания жеста.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 3.2 и позже.
-
Отсоединяет устройство распознавания жеста от представления получения.
Объявление
Swift
func removeGestureRecognizer(_gestureRecognizer: UIGestureRecognizer)Objective C
- (void)removeGestureRecognizer:(UIGestureRecognizer *)gestureRecognizerПараметры
gestureRecognizerОбъект, класс которого убывает от
UIGestureRecognizerкласс.Обсуждение
Этот метод выпуски
gestureRecognizerв дополнение к отсоединению его от представления.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 3.2 и позже.
-
gestureRecognizersСвойствоУстройство распознавания жеста в настоящее время возражает присоединяемый к представлению.
Объявление
Swift
var gestureRecognizers: [AnyObject]?Objective C
@property(nonatomic, copy) NSArray *gestureRecognizersОбсуждение
Каждый из этих объектов является экземпляром подкласса абстрактного базового класса
UIGestureRecognizer. Если нет никаких присоединенных устройств распознавания жеста, значение этого свойства является пустым массивом.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 3.2 и позже.
-
Если устройству распознавания жеста нужно позволить продолжать отслеживать сенсорные события, спрашивает представление.
Объявление
Swift
func gestureRecognizerShouldBegin(_gestureRecognizer: UIGestureRecognizer) -> BoolObjective C
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizerПараметры
gestureRecognizerУстройство распознавания жеста, пытающееся перейти из
UIGestureRecognizerStatePossibleсостояние.Возвращаемое значение
YEStrueесли устройство распознавания жеста должно продолжать отслеживать сенсорные события и использовать их для инициирования жеста илиNOfalseесли это должно перейти кUIGestureRecognizerStateFailedсостояние.Обсуждение
Подклассы могут переопределить этот метод и использовать его для предотвращения распознавания определенных жестов. Например,
UISliderкласс использует этот метод для предотвращения, сильно ударяет параллельный направлению перемещения ползунка и которые запускаются в ползунке.В то время, когда этот метод вызывают, устройство распознавания жеста находится в
UIGestureRecognizerStatePossibleутвердите и думает, что этому были нужны события для перемещения вUIGestureRecognizerStateBeganсостояние.Реализация по умолчанию этого метода возвраты
YEStrue.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
animateWithDuration (_: delay:options:animations:completion:) + animateWithDuration:delay:options:animations:completion:Анимационные изменения в одном или более представлениях с помощью указанной продолжительности, задержки, опций и обработчика завершения.
Объявление
Swift
class func animateWithDuration(_duration: NSTimeInterval, delaydelay: NSTimeInterval, optionsoptions: UIViewAnimationOptions, animationsanimations: () -> Void, completioncompletion: ((Bool) -> Void)?)Objective C
+ (void)animateWithDuration:(NSTimeInterval)durationdelay:(NSTimeInterval)delayoptions:(UIViewAnimationOptions)optionsanimations:(void (^)(void))animationscompletion:(void (^)(BOOL finished))completionПараметры
durationОбщая продолжительность анимаций, измеренных в секундах. Если Вы указываете отрицательную величину или
0, изменения внесены, не анимируя их.delayКоличество времени (измеренный в секундах) для ожидания прежде, чем начать анимации. Укажите значение
0начать анимации сразу.optionsМаска опций, указывающих, как Вы хотите выполнить анимации. Для списка допустимых констант посмотрите
UIViewAnimationOptions.animationsБлочный объект, содержащий изменения для передавания представления. Это - то, где Вы программно изменяете любые animatable свойства представлений в Вашей иерархии представления. Этот блок не берет параметров и не имеет никакого возвращаемого значения. Этот параметр не должен быть
NULL.completionБлочный объект, который будет выполняться, когда заканчивается последовательность анимации. Этот блок не имеет никакого возвращаемого значения и берет единственный булев параметр, указывающий, вызвали ли анимации, фактически законченные перед обработчиком завершения. Если продолжительность анимации 0, этот блок выполняется в начале цикла цикла следующего запуска. Этот параметр может быть
NULL.Обсуждение
Этот метод инициирует ряд анимаций для выполнения на представлении. Блочный объект в
animationsпараметр содержит код для анимации свойств одного или более представлений.Во время анимации взаимодействие с пользователем временно недоступно для анимируемых представлений. (До iOS 5 взаимодействие с пользователем отключено для целого приложения.), Если Вы хотите, чтобы пользователи были в состоянии взаимодействовать с представлениями, включайте
UIViewAnimationOptionAllowUserInteractionпостоянный вoptionsпараметр.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 4.0 и позже.
-
Анимационные изменения в одном или более представлениях с помощью указанной продолжительности и обработчика завершения.
Объявление
Swift
class func animateWithDuration(_duration: NSTimeInterval, animationsanimations: () -> Void, completioncompletion: ((Bool) -> Void)?)Objective C
+ (void)animateWithDuration:(NSTimeInterval)durationanimations:(void (^)(void))animationscompletion:(void (^)(BOOL finished))completionПараметры
durationОбщая продолжительность анимаций, измеренных в секундах. Если Вы указываете отрицательную величину или
0, изменения внесены, не анимируя их.animationsБлочный объект, содержащий изменения для передавания представления. Это - то, где Вы программно изменяете любые animatable свойства представлений в Вашей иерархии представления. Этот блок не берет параметров и не имеет никакого возвращаемого значения. Этот параметр не должен быть
NULL.completionБлочный объект, который будет выполняться, когда заканчивается последовательность анимации. Этот блок не имеет никакого возвращаемого значения и берет единственный булев параметр, указывающий, вызвали ли анимации, фактически законченные перед обработчиком завершения. Если продолжительность анимации 0, этот блок выполняется в начале цикла цикла следующего запуска. Этот параметр может быть
NULL.Обсуждение
Этот метод сразу выполняет указанные анимации с помощью
UIViewAnimationOptionCurveEaseInOutиUIViewAnimationOptionTransitionNoneпараметры анимации.Например, если Вы хотите исчезнуть представление, пока это не полностью прозрачно, и затем удалите его из своей иерархии представления, Вы могли использовать код, подобный следующему:
[UIView animateWithDuration:0.2animations:^{view.alpha = 0.0;}completion:^(BOOL finished){ [view removeFromSuperview]; }];
Во время анимации взаимодействие с пользователем временно недоступно для анимируемых представлений. (До iOS 5 взаимодействие с пользователем отключено для целого приложения.)
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 4.0 и позже.
-
Анимационные изменения в одном или более представлениях с помощью указанной продолжительности.
Объявление
Swift
class func animateWithDuration(_duration: NSTimeInterval, animationsanimations: () -> Void)Objective C
+ (void)animateWithDuration:(NSTimeInterval)durationanimations:(void (^)(void))animationsПараметры
durationОбщая продолжительность анимаций, измеренных в секундах. Если Вы указываете отрицательную величину или
0, изменения внесены, не анимируя их.animationsБлочный объект, содержащий изменения для передавания представления. Это - то, где Вы программно изменяете любые animatable свойства представлений в Вашей иерархии представления. Этот блок не берет параметров и не имеет никакого возвращаемого значения. Этот параметр не должен быть
NULL.Обсуждение
Этот метод сразу выполняет указанные анимации с помощью
UIViewAnimationOptionCurveEaseInOutиUIViewAnimationOptionTransitionNoneпараметры анимации.Во время анимации взаимодействие с пользователем временно недоступно для анимируемых представлений. (До iOS 5 взаимодействие с пользователем отключено для целого приложения.)
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 4.0 и позже.
-
transitionWithView (_: duration:options:animations:completion:) + transitionWithView:duration:options:animations:completion:Создает анимацию перехода для указанного контейнерного представления.
Объявление
Swift
class func transitionWithView(_view: UIView, durationduration: NSTimeInterval, optionsoptions: UIViewAnimationOptions, animationsanimations: () -> Void, completioncompletion: ((Bool) -> Void)?)Objective C
+ (void)transitionWithView:(UIView *)viewduration:(NSTimeInterval)durationoptions:(UIViewAnimationOptions)optionsanimations:(void (^)(void))animationscompletion:(void (^)(BOOL finished))completionПараметры
viewКонтейнерное представление, выполняющее переход.
durationПродолжительность анимации перехода, измеренной в секундах. Если Вы указываете отрицательную величину или
0, переход сделан без анимаций.optionsМаска опций, указывающих, как Вы хотите выполнить анимации. Для списка допустимых констант посмотрите
UIViewAnimationOptions.animationsБлочный объект, содержащий изменения, которые Вы хотите внести в указанное представление. Этот блок не берет параметров и не имеет никакого возвращаемого значения. Этот параметр не должен быть
NULL.completionБлочный объект, который будет выполняться, когда заканчивается последовательность анимации. Этот блок не имеет никакого возвращаемого значения и берет единственный булев параметр, указывающий, вызвали ли анимации, фактически законченные перед обработчиком завершения. Если продолжительность анимации 0, этот блок выполняется в начале цикла цикла следующего запуска. Этот параметр может быть
NULL.Обсуждение
Этот метод применяет переход к указанному представлению так, чтобы можно было внести изменения состояния в него. Блок Вы указываете в
animationsпараметр содержит любые изменения состояния, которые Вы хотите внести. Можно использовать этот блок, чтобы добавить, удалить, показать или скрыть подпредставления указанного представления. Если Вы хотите включить другие animatable изменения, необходимо включатьUIViewAnimationOptionAllowAnimatedContentключoptionsпараметр.Следующий код создает зеркально отраженный переход для указанного контейнерного представления. В надлежащей точке в переходе удалено одно подпредставление, и другой добавляется к контейнерному представлению. Это заставляет его посмотреть, как будто новое представление было зеркально отражено в место с новым подпредставлением, но действительно это - просто то же представление, анимированное назад в место с новой конфигурацией.
[UIView transitionWithView:containerViewduration:0.2options:UIViewAnimationOptionTransitionFlipFromLeftanimations:^{ [fromView removeFromSuperview]; [containerView addSubview:toView]; }completion:NULL];
Во время анимации взаимодействие с пользователем временно недоступно для анимируемых представлений. (До iOS 5 взаимодействие с пользователем отключено для целого приложения.), Если Вы хотите, чтобы пользователи были в состоянии взаимодействовать с представлениями, включайте
UIViewAnimationOptionAllowUserInteractionпостоянный вoptionsпараметр.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 4.0 и позже.
-
transitionFromView (_: toView:duration:options:completion:) + transitionFromView:toView:duration:options:completion:Создает анимацию перехода между указанными представлениями с помощью данных параметров.
Объявление
Swift
class func transitionFromView(_fromView: UIView, toViewtoView: UIView, durationduration: NSTimeInterval, optionsoptions: UIViewAnimationOptions, completioncompletion: ((Bool) -> Void)?)Objective C
+ (void)transitionFromView:(UIView *)fromViewtoView:(UIView *)toViewduration:(NSTimeInterval)durationoptions:(UIViewAnimationOptions)optionscompletion:(void (^)(BOOL finished))completionПараметры
fromViewСтартовое представление для перехода. По умолчанию это представление удалено из его суперпредставления как часть перехода.
toViewКонечное представление для перехода. По умолчанию это представление добавляется к суперпредставлению
fromViewкак часть перехода.durationПродолжительность анимации перехода, измеренной в секундах. Если Вы указываете отрицательную величину или
0, переход сделан без анимаций.optionsМаска опций, указывающих, как Вы хотите выполнить анимации. Для списка допустимых констант посмотрите
UIViewAnimationOptions.completionБлочный объект, который будет выполняться, когда заканчивается последовательность анимации. Этот блок не имеет никакого возвращаемого значения и берет единственный булев параметр, указывающий, вызвали ли анимации, фактически законченные перед обработчиком завершения. Если продолжительность анимации 0, этот блок выполняется в начале цикла цикла следующего запуска. Этот параметр может быть
NULL.Обсуждение
Этот метод обеспечивает простой способ перейти от представления в
fromViewпараметр к представлению вtoViewпараметр. По умолчанию, представление вfromViewзаменяется в иерархии представления представлением вtoView. Если оба представления уже являются частью Вашей иерархии представления, можно включатьUIViewAnimationOptionShowHideTransitionViewsопция вoptionsпараметр, чтобы просто скрыться или показать им.Этот метод изменяет представления в их иерархии представления только. Это не изменяет контроллеры представления Вашего приложения всегда. Например, при использовании этого метода для изменения корневого представления, выведенного на экран контроллером представления, это - ответственность обновить контроллер представления соответственно для обработки изменения.
Переход представления сразу запускается, если другая анимация не уже в полете, когда это сразу запускается после того, как текущая анимация заканчивается.
Во время анимации взаимодействие с пользователем временно недоступно для анимируемых представлений. (До iOS 5 взаимодействие с пользователем отключено для целого приложения.), Если Вы хотите, чтобы пользователи были в состоянии взаимодействовать с представлениями, включайте
UIViewAnimationOptionAllowUserInteractionпостоянный вoptionsпараметр.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 4.0 и позже.
-
animateKeyframesWithDuration (_: delay:options:animations:completion:) + animateKeyframesWithDuration:delay:options:animations:completion:Создает блочный объект анимации, который может использоваться для установки основанных на ключевом кадре анимаций для текущего представления.
Объявление
Swift
class func animateKeyframesWithDuration(_duration: NSTimeInterval, delaydelay: NSTimeInterval, optionsoptions: UIViewKeyframeAnimationOptions, animationsanimations: () -> Void, completioncompletion: ((Bool) -> Void)?)Objective C
+ (void)animateKeyframesWithDuration:(NSTimeInterval)durationdelay:(NSTimeInterval)delayoptions:(UIViewKeyframeAnimationOptions)optionsanimations:(void (^)(void))animationscompletion:(void (^)(BOOL finished))completionПараметры
durationПродолжительность полной анимации, измеренной в секундах. Если Вы указываете отрицательную величину или
0, изменения сразу внесены и без анимаций.delayУказывает время (в секундах) для ожидания прежде, чем запустить анимацию.
optionsМаска опций, указывающих, как Вы хотите выполнить анимации. Для списка допустимых констант посмотрите
“UIViewKeyframeAnimationOptions”.animationsБлочный объект, содержащий изменения для передавания представления. Как правило, Вы вызываете
addKeyframeWithRelativeStartTime:relativeDuration:animations:метод один или несколько раз из этого блока. Можно также изменить значения представления непосредственно, если Вы хотите, чтобы те изменения анимировали по полной продолжительности. Этот блок не берет параметров и не имеет никакого возвращаемого значения. Не используйте anilзначение для этого параметра.completionБлочный объект, который будет выполняться, когда заканчивается последовательность анимации. Этот блок не имеет никакого возвращаемого значения и берет единственный булев параметр, указывающий, вызвали ли анимации, законченные перед обработчиком завершения. Если продолжительность анимации 0, этот блок выполняется в начале цикла цикла следующего запуска. Можно использовать a
nilзначение для этого параметра.Обсуждение
Этот метод создает блок анимации, который можно использовать для установки основанной на ключевом кадре анимации. Сами ключевые кадры не являются частью начального блока анимации, Вы создаете использование этого метода. В
animationsблок, необходимо добавить время ключевого кадра и данные анимации путем вызоваaddKeyframeWithRelativeStartTime:relativeDuration:animations:метод один или несколько раз. Добавление ключевых кадров заставляет анимацию анимировать представление от своей текущей стоимости до значения первого ключевого кадра, затем к значению следующего ключевого кадра, и т.д. во времена, которые Вы указываете.Если Вы не включаете ключевых кадров
animationsблок, анимация продолжается от запуска для окончания как стандартный блок анимации. Другими словами, система анимирует от значений текущего представления до любых новых значений по указанномуduration.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
-
addKeyframeWithRelativeStartTime (_: relativeDuration:animations:) + addKeyframeWithRelativeStartTime:relativeDuration:animations:Указывает значения синхронизации и анимации для единственного кадра анимации ключевых кадров.
Объявление
Swift
class func addKeyframeWithRelativeStartTime(_frameStartTime: Double, relativeDurationframeDuration: Double, animationsanimations: () -> Void)Objective C
+ (void)addKeyframeWithRelativeStartTime:(double)frameStartTimerelativeDuration:(double)frameDurationanimations:(void (^)(void))animationsПараметры
frameStartTimeВремя, в которое можно запустить указанные анимации. Это значение должно быть в диапазоне
0к1, где0представляет запуск полной анимации и1представляет конец полной анимации. Например, для анимации, которая составляет две секунды в продолжительности, указывая время начала0.5заставляет анимации начинать выполняться спустя одну секунду после запуска полной анимации.frameDurationОтрезок времени, за который можно анимировать к указанному значению. Это значение должно быть в диапазоне
0к1и указывает количество времени относительно полной продолжительности анимации. Если Вы указываете значение0, любые свойства Вы начинаетесьanimationsблокируйте обновление сразу в указанное время начала. При указании ненулевого значения свойства анимируют по тому количеству времени. Например, для анимации, которая составляет две секунды в продолжительности, указывая продолжительность0.5результаты в продолжительности анимации одной секунды.animationsБлочный объект, содержащий анимации, Вы хотите выполнить. Это - то, где Вы программно изменяете любые animatable свойства представлений в Вашей иерархии представления. Этот блок не берет параметров и не имеет никакого возвращаемого значения. Этот параметр не должен быть
nil.Обсуждение
Для анимации свойств представления во время анимации ключевых кадров вызовите этот метод из анимации, блокируют Вас, передают
animateKeyframesWithDuration:delay:options:animations:completion:метод. Чтобы анимировать между различными значениями или настроить синхронизацию Ваших анимаций свойства представления, можно вызвать этот метод многократно в блоке.Свойства представления Вы изменяетесь в
animationsблокируйте анимационный по промежутку, в котором Вы указываетеframeDurationпараметр. Свойства не начинают анимировать до времени Вы указываете вframeStartTimeпараметр. После времени начала кадра анимация выполняется по ее указанной продолжительности или, пока не прервано другой анимацией.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
-
performSystemAnimation (_: onViews:options:animations:completion:) + performSystemAnimation:onViews:options:animations:completion:Выполняет указанную предоставленную системой анимацию на одном или более представлениях, вместе с дополнительными параллельными анимациями, которые Вы определяете.
Объявление
Swift
class func performSystemAnimation(_animation: UISystemAnimation, onViewsviews: [AnyObject], optionsoptions: UIViewAnimationOptions, animationsparallelAnimations: (() -> Void)?, completioncompletion: ((Bool) -> Void)?)Objective C
+ (void)performSystemAnimation:(UISystemAnimation)animationonViews:(NSArray *)viewsoptions:(UIViewAnimationOptions)optionsanimations:(void (^)(void))parallelAnimationscompletion:(void (^)(BOOL finished))completionПараметры
animationСистемная анимация для выполнения; константа от
UISystemAnimationперечисление.viewsПредставления для выполнения анимаций на.
optionsМаска опций, указывающих, как Вы хотите выполнить анимации. Для списка допустимых констант посмотрите
UIViewAnimationOptions.parallelAnimationsДополнительные анимации, которые Вы указываете для выполнения рядом с системной анимацией с той же синхронизацией и продолжительностью, которую системная анимация определяет или наследовала.
В Ваших дополнительных анимациях не изменяйте свойства представления, на котором выполняется системная анимация.
completionБлочный объект, который будет выполняться, когда заканчивается последовательность анимации. Единственный булев параметр указывает, вызвали ли анимации, законченные перед обработчиком завершения. Если продолжительность анимации
0, этот блок выполняется в начале цикла цикла следующего запуска. Можно использовать anilзначение для этого параметра.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
-
animateWithDuration (_: delay:usingSpringWithDamping:initialSpringVelocity:options:animations:completion:) + animateWithDuration:delay:usingSpringWithDamping:initialSpringVelocity:options:animations:completion:Выполняет анимацию представления с помощью кривой синхронизации, соответствующей движению физической пружины.
Объявление
Swift
class func animateWithDuration(_duration: NSTimeInterval, delaydelay: NSTimeInterval, usingSpringWithDampingdampingRatio: CGFloat, initialSpringVelocityvelocity: CGFloat, optionsoptions: UIViewAnimationOptions, animationsanimations: () -> Void, completioncompletion: ((Bool) -> Void)?)Objective C
+ (void)animateWithDuration:(NSTimeInterval)durationdelay:(NSTimeInterval)delayusingSpringWithDamping:(CGFloat)dampingRatioinitialSpringVelocity:(CGFloat)velocityoptions:(UIViewAnimationOptions)optionsanimations:(void (^)(void))animationscompletion:(void (^)(BOOL finished))completionПараметры
durationОбщая продолжительность анимаций, измеренных в секундах. Если Вы указываете отрицательную величину или
0, изменения внесены, не анимируя их.delayКоличество времени (измеренный в секундах) для ожидания прежде, чем начать анимации. Укажите значение
0начать анимации сразу.dampingRatioОтношение затухания для пружинной анимации, поскольку это приближается к своему состоянию покоя.
Для гладкого замедления анимации без колебания используйте значение
1. Используйте отношение затухания ближе для обнуления для увеличения колебания.velocityНачальная пружинная скорость. Для гладкого запуска к анимации соответствуйте это значение к скорости представления, как это было до присоединения.
Значение
1соответствует общему расстоянию анимации, пересеченному за одну секунду. Например, если общее расстояние анимации является 200 точками, и Вы хотите, чтобы запуск анимации соответствовал скорость представления 100 ПБ/с, использовал значение0.5.optionsМаска опций, указывающих, как Вы хотите выполнить анимации. Для списка допустимых констант посмотрите
UIViewAnimationOptions.animationsБлочный объект, содержащий изменения для передавания представления. Это - то, где Вы программно изменяете любые animatable свойства представлений в Вашей иерархии представления. Этот блок не берет параметров и не имеет никакого возвращаемого значения. Этот параметр не должен быть
NULL.completionБлочный объект, который будет выполняться, когда заканчивается последовательность анимации. Этот блок не имеет никакого возвращаемого значения и берет единственный булев параметр, указывающий, вызвали ли анимации, фактически законченные перед обработчиком завершения. Если продолжительность анимации 0, этот блок выполняется в начале цикла цикла следующего запуска. Этот параметр может быть
NULL.Обсуждение
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
-
Отключает анимацию перехода представления.
Объявление
Swift
class func performWithoutAnimation(_actionsWithoutAnimation: () -> Void)Objective C
+ (void)performWithoutAnimation:(void (^)(void))actionsWithoutAnimationПараметры
actionsWithoutAnimationКод перехода представления, который Вы хотите выполнить без анимации.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
Использованию методов в этом разделе обескураживают в iOS 4 и позже. Используйте основанные на блоке методы анимации вместо этого.
-
Отмечает начало начинать/фиксировать блока анимации.
Объявление
Swift
class func beginAnimations(_animationID: String?, contextcontext: UnsafeMutablePointer<Void>)Objective C
+ (void)beginAnimations:(NSString *)animationIDcontext:(void *)contextПараметры
animationIDПредоставленный приложение идентификатор для анимаций.
contextПользовательские данные, которые Вы хотите связать с этим набором анимаций. информация, передающаяся делегату анимации сообщения — набор селекторов с помощью
setAnimationWillStartSelector:иsetAnimationDidStopSelector:методы.Обсуждение
Этот метод сигнализирует к системе, что Вы хотите указать одну или более анимаций для выполнения. После вызова этого метода сконфигурируйте параметры анимации (использующий
setAnimation…методы класса), и затем изменяют желаемые animatable свойства Ваших представлений. Когда Вы будете сделаны, изменяя Ваши свойства представления, вызовитеcommitAnimationsметод, чтобы закрыть набор и запланировать анимации.Можно вложить наборы анимаций (путем вызова этого метода снова прежде, чем фиксировать предыдущий набор анимаций) по мере необходимости. Вложенные анимации собирают в группу их и позволяют Вам устанавливать различные параметры анимации для вложенной группы.
Если Вы устанавливаете запуск или останавливаете селектор с помощью
setAnimationWillStartSelector:илиsetAnimationDidStopSelector:метод, значения Вы указываете дляanimationIDиcontextпараметры передаются Вашим селекторам во время выполнения. Можно использовать эти параметры для передачи дополнительной информации тем селекторам.Использованию этого метода обескураживают в iOS 4.0 и позже. Необходимо использовать основанные на блоке методы анимации для указания анимаций вместо этого.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Отмечает конец начинать/фиксировать блока анимации и планирует анимации для выполнения.
Объявление
Swift
class func commitAnimations()Objective C
+ (void)commitAnimationsОбсуждение
Если набор текущей анимации является наиболее удаленным набором, этот метод запускает анимации, когда приложение возвращается к циклу выполнения. Если набор текущей анимации вкладывается в другом наборе, этот метод ожидает, пока наиболее удаленный набор анимаций не фиксируется, в которой точке это фиксирует все анимации вместе.
Анимации, выполненные в отдельном потоке, чтобы избежать блокировать приложение. Таким образом многократные анимации могут быть сложены поверх друг друга. Посмотрите
setAnimationBeginsFromCurrentState:поскольку, как запустить анимации, в то время как другие происходят.Использованию этого метода обескураживают в iOS 4.0 и позже. Необходимо использовать основанные на блоке методы анимации для указания анимаций вместо этого.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Устанавливает время начала для блока текущей анимации.
Объявление
Swift
class func setAnimationStartDate(_startTime: NSDate)Objective C
+ (void)setAnimationStartDate:(NSDate *)startTimeПараметры
startTimeВремя для начала анимаций.
Обсуждение
Вызовите этот метод между
beginAnimations:context:иcommitAnimationsметоды для указания времени начала для того набора анимаций. И вызовите этот метод до изменения animatable свойств Ваших представлений. (Не вызывайте этот метод в сочетании с основанной на блоке анимацией.), Если Вы не вызываете этот метод, время начала установлено в значение, возвращенноеCFAbsoluteTimeGetCurrentфункция, начинающая анимации как можно скорее.Использованию этого метода обескураживают в iOS 4.0 и позже. Необходимо использовать основанные на блоке методы анимации для указания анимаций вместо этого.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Наборы, включены ли анимации.
Объявление
Swift
class func setAnimationsEnabled(_enabled: Bool)Objective C
+ (void)setAnimationsEnabled:(BOOL)enabledПараметры
enabledУказать
YEStrueвключить анимации илиNOfalseотключить их.Обсуждение
Анимации включены по умолчанию. При отключении анимаций код в последующих блоках анимации все еще выполняется, но фактически не происходят никакие анимации. Таким образом любые изменения, которые Вы вносите в блоке анимации, сразу отражаются вместо того, чтобы быть анимированным. Это - истина, используете ли Вы основанные на блоке методы анимации или начинать/фиксировать методы анимации.
Этот метод влияет только на те анимации, представленные после того, как его вызывают. При вызове этого метода, в то время как существующие анимации работают, те анимации продолжают работать, пока они не достигают своей естественной конечной точки.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Устанавливает делегата к любым сообщениям анимации.
Объявление
Swift
class func setAnimationDelegate(_delegate: AnyObject?)Objective C
+ (void)setAnimationDelegate:(id)delegateПараметры
delegateОбъект, определяющий методы, зарегистрировал использование
setAnimationWillStartSelector:иsetAnimationDidStopSelector:методы. Представление поддерживает сильную ссылку к этому объекту на время анимации.Обсуждение
Можно указать делегата анимации в случаях, где Вы хотите получить сообщения когда запуски анимации или остановки. После вызова этого метода необходимо вызвать
setAnimationWillStartSelector:иsetAnimationDidStopSelector:методы по мере необходимости для регистрации надлежащих селекторов. По умолчанию делегат анимации установлен вnil.Вы прежде всего используете этот метод для установки делегата к блокам анимации, создаваемым с помощью начинать/фиксировать методов анимации. Вызов этого метода извне блока анимации ничего не делает.
Использованию этого метода обескураживают в iOS 4.0 и позже. При использовании основанных на блоке методов анимации можно включать запуск делегата и закончить код непосредственно в блоке.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Устанавливает сообщение для отправки делегату анимации когда запуски анимации.
Объявление
Swift
class func setAnimationWillStartSelector(_selector: Selector)Objective C
+ (void)setAnimationWillStartSelector:(SEL)selectorПараметры
selectorСообщение для отправки делегату анимации перед анимациями запускается. Значение по умолчанию
NULL. Этот селектор должен иметь форму:- (void)animationDidStart:(NSString *)animationID context:(void *)context. Ваш метод должен взять следующие параметры:animationIDNSStringсодержа дополнительный предоставленный приложение идентификатор. Это - строка идентификатора, передающаясяbeginAnimations:context:метод. Этот параметр может бытьnil.contextДополнительный предоставленный приложение контекст. Это - данные контекста, переданные
beginAnimations:context:метод. Этот параметр может бытьnil.
Обсуждение
При указании делегата анимации к начинать/фиксировать набору анимаций Вы используете этот метод для указания селектора для вызова, прежде чем начнутся анимации. Этот метод ничего не делает, если вызвано от за пределами блока анимации. Это нужно вызвать между вызовами к
beginAnimations:context:иcommitAnimationsметоды. Этот селектор установлен вNULLпо умолчанию.Использованию этого метода обескураживают в iOS 4.0 и позже. При использовании основанных на блоке методов анимации можно включать код запуска делегата непосредственно в блоке.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Когда анимация останавливается, устанавливает сообщение для отправки делегату анимации.
Объявление
Swift
class func setAnimationDidStopSelector(_selector: Selector)Objective C
+ (void)setAnimationDidStopSelector:(SEL)selectorПараметры
selectorСообщение, отправленное делегату анимации после анимаций, заканчивается. Значение по умолчанию
NULL. Селектор должен иметь форму:- (void)animationDidStop:(NSString *)animationID finished:(NSNumber *)finished context:(void *)context. Ваш метод должен взять следующие параметры:animationIDNSStringсодержа дополнительный предоставленный приложение идентификатор. Это - идентификатор, передающийсяbeginAnimations:context:метод. Этот параметр может бытьnil.finishedNSNumberобъект, содержащий булево значение. ЗначениеYEStrueесли анимация работала к завершению, прежде чем это остановилось илиNOfalseесли это не сделало.contextДополнительный предоставленный приложение контекст. Это - данные контекста, переданные
beginAnimations:context:метод. Этот параметр может бытьnil.
Обсуждение
При указании делегата анимации к начинать/фиксировать набору анимаций Вы используете этот метод для указания селектора для вызова после того, как заканчиваются анимации. Этот метод ничего не делает, если вызвано от за пределами блока анимации. Это нужно вызвать между вызовами к
beginAnimations:context:иcommitAnimationsметоды. Этот селектор установлен вNULLпо умолчанию.Использованию этого метода обескураживают в iOS 4.0 и позже. При использовании основанных на блоке методов анимации можно включать код конца делегата непосредственно в блоке.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Устанавливает продолжительность (измеренный в секундах) анимаций в блоке анимации.
Объявление
Swift
class func setAnimationDuration(_duration: NSTimeInterval)Objective C
+ (void)setAnimationDuration:(NSTimeInterval)durationПараметры
durationПериод, за который анимация происходит, измеренная в секундах.
Обсуждение
Если Вы указываете, что Ваше использование анимаций начинает/фиксирует набор методов, Вы используете этот метод для указания продолжительности анимаций. Этот метод ничего не делает, если вызвано от за пределами блока анимации. Это нужно вызвать между вызовами к
beginAnimations:context:иcommitAnimationsметоды. И необходимо вызвать этот метод до изменения animatable свойств представлений. Значение по умолчанию0.2секунды.Использованию этого метода обескураживают в iOS 4.0 и позже. Вместо этого необходимо использовать любой из основанных на блоке методов анимации для указания анимаций и их продолжительности.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Устанавливает количество времени (в секундах) для ожидания прежде, чем анимировать изменения свойства в блоке анимации.
Объявление
Swift
class func setAnimationDelay(_delay: NSTimeInterval)Objective C
+ (void)setAnimationDelay:(NSTimeInterval)delayОбсуждение
Если Вы указываете, что Ваше использование анимаций начинает/фиксирует набор методов, Вы используете этот метод для указания количества времени для ожидания прежде, чем запустить анимации. Этот метод ничего не делает, если вызвано от за пределами блока анимации. Это нужно вызвать между вызовами к
beginAnimations:context:иcommitAnimationsметоды. И необходимо вызвать этот метод до изменения animatable свойств представлений. Значение по умолчанию0.0секунды.Использованию этого метода обескураживают в iOS 4.0 и позже. Вместо этого необходимо использовать
animateWithDuration:delay:options:animations:completion:метод для указания анимаций и стартовой задержки.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Устанавливает кривую для использования при анимации изменений свойства в блоке анимации.
Объявление
Swift
class func setAnimationCurve(_curve: UIViewAnimationCurve)Objective C
+ (void)setAnimationCurve:(UIViewAnimationCurve)curveОбсуждение
Если Вы указываете, что Ваше использование анимаций начинает/фиксирует набор методов, Вы используете этот метод для указания типа кривой, которую Вы хотите использовать для анимации. Этот метод ничего не делает, если вызвано от за пределами блока анимации. Это нужно вызвать между вызовами к
beginAnimations:context:иcommitAnimationsметоды. И необходимо вызвать этот метод до изменения animatable свойств представлений. Значение по умолчаниюUIViewAnimationCurveEaseInOut.Использованию этого метода обескураживают в iOS 4.0 и позже. Вместо этого необходимо использовать
animateWithDuration:delay:options:animations:completion:метод для указания анимаций и анимации изгибает опции.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Устанавливает анимации числа раз в блочном повторении анимации.
Объявление
Swift
class func setAnimationRepeatCount(_repeatCount: Float)Objective C
+ (void)setAnimationRepeatCount:(float)repeatCountПараметры
repeatCountПовторение анимаций числа раз. Это значение может быть частью. Если Вы указываете значение
0, анимация выполняется один раз без повторения.Обсуждение
Используйте этот метод для указания числа раз для повторения указанных анимаций. Этот метод ничего не делает, если вызвано от за пределами блока анимации. Можно использовать этот метод или в сочетании с основанными на блоке методами или в сочетании с начинать/фиксировать методами для определения блока анимации. Если Вы явно не устанавливаете повторный счет, анимация не повторяется.
Если Вы передаете
UIViewAnimationOptionRepeatопция кanimateWithDuration:delay:options:animations:completion:метод, не устанавливая явный повторный счет, анимация повторяется неопределенно. Если Вы хотите, чтобы анимация повторила конечное число времен, вызовите этот метод из своего блока.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Наборы, инвертируют ли анимации в блоке анимации автоматически себя.
Объявление
Swift
class func setAnimationRepeatAutoreverses(_repeatAutoreverses: Bool)Objective C
+ (void)setAnimationRepeatAutoreverses:(BOOL)repeatAutoreversesПараметры
repeatAutoreversesУказать
YEStrueпозволять автоинвертировать илиNOfalseотключить его.Обсуждение
Если Вы позволяете автоинвертировать, единственный цикл анимации изменяет свойства, анимируемые на их новые значения и затем назад к их исходным значениям. В конце анимаций затронутые представления тогда обновляются сразу для отражения новых значений. Этот метод ничего не делает, если вызвано от за пределами блока анимации. По умолчанию автоинвертирование отключено.
Если Вы комбинируете автоинвертирование с повторным счетом (устанавливаемое использование
setAnimationRepeatCount:метод), можно создать анимации, смещающие назад и вперед между старыми и новыми значениями конкретное количество времен. Однако помните, что повторный счет указывает число полных циклов. Если Вы указываете интегральное значение такой как2.0, анимация заканчивается на старом значении, сопровождающемся представлением, сразу обновляющим себя для показа нового значения, которое могло бы издавать неприятный звук. Если Вы хотите, чтобы анимация закончилась на новом значении (вместо старого значения), добавить0.5к значению повторного счета. Это добавляет дополнительную половину цикла к анимации.Использованию этого метода обескураживают в iOS 4.0 и позже. Вместо этого необходимо использовать
animateWithDuration:delay:options:animations:completion:метод для указания анимаций и параметров анимации.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Наборы, должна ли анимация начать играть от текущего состояния.
Объявление
Swift
class func setAnimationBeginsFromCurrentState(_fromCurrentState: Bool)Objective C
+ (void)setAnimationBeginsFromCurrentState:(BOOL)fromCurrentStateПараметры
fromCurrentStateУказать
YEStrueесли анимации должны начаться с их в настоящее время видимого состояния; иначе,NOfalse.Обсуждение
Если установлено в
YEStrueкогда анимация находится в рейсе, позиция текущего представления анимации в полете используется в качестве начального состояния для новой анимации. Если установлено вNOfalse, концы анимации в полете перед новой анимацией начинают использовать последнюю позицию представления как начальное состояние. Если анимация не находится в рейсе или вызвана за пределами блока анимации, этот метод ничего не делает. ИспользуйтеbeginAnimations:context:метод класса запуститься иcommitAnimationsметод класса закончить блок анимации. Значение по умолчаниюNOfalse.Использованию этого метода обескураживают в iOS 4.0 и позже. Вместо этого необходимо использовать
animateWithDuration:delay:options:animations:completion:метод для указания анимаций и параметров анимации.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Устанавливает переход для применения к представлению во время блока анимации.
Объявление
Swift
class func setAnimationTransition(_transition: UIViewAnimationTransition, forViewview: UIView, cachecache: Bool)Objective C
+ (void)setAnimationTransition:(UIViewAnimationTransition)transitionforView:(UIView *)viewcache:(BOOL)cacheПараметры
transitionПереход для применения к
view. Возможные значения описаны в UIViewAnimationTransition.viewПредставление для применения перехода к.
cacheЕсли
YEStrue, прежде и после изображенийviewпредставляются один раз и используются для создания кадров в анимации. Если Вы устанавливаете этот параметр на, кэширование может улучшить производительность, ноYEStrue, Вы не должны обновлять представление или его подпредставления во время перехода. Обновление представления и его подпредставлений может вмешаться в кэширующиеся способы поведения и заставить содержание представления быть представленным неправильно (или в неправильном расположении) во время анимации. Необходимо ожидать до концов перехода для обновления представления.Если
NOfalse, представление и его содержание должны быть обновлены для каждого кадра анимации перехода, которая может заметно влиять на частоту кадров.Обсуждение
Если Вы хотите изменить появление представления во время перехода — например, зеркальное отражение от одного представления до другого — тогда используют контейнерное представление, экземпляр
UIView, следующим образом:Начните блок анимации.
Установите переход на контейнерном представлении.
Удалите подпредставление из контейнерного представления.
Добавьте новое подпредставление к контейнерному представлению.
Фиксируйте блок анимации.
Использованию этого метода обескураживают в iOS 4.0 и позже. Необходимо использовать
transitionWithView:duration:options:animations:completion:метод для выполнения переходов вместо этого.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Возвращает булево значение, указывающее, включены ли анимации.
Объявление
Swift
class func areAnimationsEnabled() -> BoolObjective C
+ (BOOL)areAnimationsEnabledВозвращаемое значение
YEStrueесли включены анимации; иначе,NOfalse.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Начинает применять эффект движения к представлению.
Объявление
Swift
func addMotionEffect(_effect: UIMotionEffect)Objective C
- (void)addMotionEffect:(UIMotionEffect *)effectПараметры
effectЭффект движения.
Обсуждение
Система анимирует переход к значениям эффекта движения с помощью настоящего
UIViewконтекст анимации. keyPath/value пары эффекта движения применяются к уровню представления представления.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
-
motionEffectsСвойствоМассив эффектов движения для представления.
Объявление
Swift
var motionEffects: [AnyObject]?Objective C
@property(copy, nonatomic) NSArray *motionEffectsОператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
-
Остановки, применяющие эффект движения к представлению.
Объявление
Swift
func removeMotionEffect(_effect: UIMotionEffect)Objective C
- (void)removeMotionEffect:(UIMotionEffect *)effectПараметры
effectЭффект движения.
Обсуждение
Любое затронутое представление оценивает анимационный их значениям постудаления с помощью настоящего
UIViewконтекст анимации.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
-
restorationIdentifierСвойствоИдентификатор, определяющий, поддерживает ли представление восстановление состояния.
Объявление
Swift
var restorationIdentifier: String?Objective C
@property(nonatomic, copy) NSString *restorationIdentifierОбсуждение
Это свойство указывает, должна ли быть сохранена информация состояния в представлении; это также используется для идентификации представления во время процесса восстановления. Значение этого свойства
nilпо умолчанию, который указывает, что не должно быть сохранено состояние представления. Присвоение строкового объекта к свойству позволяет контроллеру представления владения знать, что представление имеет соответствующую информацию состояния для сохранения.Присвойте значение этому свойству, только если Вы реализуете пользовательское представление, реализующее
encodeRestorableStateWithCoder:иdecodeRestorableStateWithCoder:методы для сохранения и восстановления состояния. Вы используете те методы, чтобы записать любую специфичную для представления информацию состояния и впоследствии использовать те данные для восстановления представления к его предыдущей конфигурации.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Кодирует связанную с состоянием информацию для представления.
Объявление
Swift
func encodeRestorableStateWithCoder(_coder: NSCoder)Objective C
- (void)encodeRestorableStateWithCoder:(NSCoder *)coderПараметры
coderОбъект кодера использовать для кодирования состояния представления.
Обсуждение
Если Ваши поддержки приложений утверждают сохранение, можно переопределить этот метод для любых представлений, имеющих информацию состояния, которая должна быть сохранена между запусками приложения. Необходимо сохранить только данные, требуемые возвратить представление его текущей конфигурации. Не сохраняйте сам объект представления и не сохраняйте данные, которые могли быть определены другими средними значениями во время запуска.
Немного представлений должны должны быть сохранить информацию состояния. Большинство представлений должно просто быть сконфигурировано с помощью данных от их контроллера представления. Однако этот метод доступен для тех представлений, имеющих конфигурируемое пользователем состояние, которое было бы иначе потеряно между запусками приложения.
Ваша реализация этого метода может закодировать другое восстановимое представление и просмотреть объекты контроллера, что это должно сослаться. Кодирование восстановимого контроллера представления или представления пишет что идентификатор восстановления объекта в кодер. (Что идентификатор используется во время процесса декодирования для определения местоположения новой версии объекта.), Если контроллер представления или представления определяет свою собственную собственную версию этого метода, тот метод также вызывают в некоторый момент так, чтобы объект мог закодировать свое собственное состояние.
Кроме представлений и контроллеров представления, другие объекты следуют за нормальным процессом сериализации и должны принять
NSCodingпротокол, прежде чем они смогут быть закодированы. Кодирование таких объектов встраивает содержание объекта в архив непосредственно. Во время процесса декодирования новый объект создается и инициализируется с данными от архива.Рекомендуется вызвать
superв некоторый момент во время Вашей реализации, чтобы дать родительским классам возможность сохранить их информацию состояния.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
См. также
-
Декодирует и восстанавливает связанную с состоянием информацию для представления.
Объявление
Swift
func decodeRestorableStateWithCoder(_coder: NSCoder)Objective C
- (void)decodeRestorableStateWithCoder:(NSCoder *)coderПараметры
coderОбъект кодера использовать для декодирования состояния представления.
Обсуждение
Если Ваши поддержки приложений утверждают восстановление, необходимо переопределить этот метод для любых представлений, для которых Вы также переопределили
encodeRestorableStateWithCoder:метод. Ваша реализация этого метода должна использовать любую сохраненную информацию состояния для восстановления представления к его предыдущей конфигурации. Если ВашencodeRestorableStateWithCoder:метод вызываютsuper, этот метод должен так же вызватьsuperв некоторый момент в его реализации.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
См. также
-
Возвращает представление снимка на основе содержания текущего представления.
Объявление
Swift
func snapshotViewAfterScreenUpdates(_afterUpdates: Bool) -> UIViewObjective C
- (UIView *)snapshotViewAfterScreenUpdates:(BOOL)afterUpdatesПараметры
afterUpdatesБыло включено булево значение, указывающее, должен ли снимок быть взят после недавних изменений. Передайте значение
NOfalseполучать экран в его текущем состоянии, которое не могло бы включать недавние изменения.Возвращаемое значение
Новое представление, основанное на объектах на снимке представленного содержания текущего представления.
Обсуждение
Этот метод очень эффективно получает текущее представленное появление представления и использует его для создания нового представления снимка. Можно использовать возвращенное представление в качестве визуального заместителя для текущего представления в приложении. Например, Вы могли бы использовать представление снимка для анимаций, где обновление большой иерархии представления могло бы быть дорогим. Поскольку содержание получено от уже представленного содержания, этот метод отражает текущее визуальное появление представления и не обновляется для отражения анимаций, планирующихся или происходящих. Однако вызов этого метода быстрее, чем попытка представить содержание текущего представления в растровое изображение самостоятельно.
Поскольку возвращенный снимок является объектом представления, можно изменить его и его расположенный на слое объект по мере необходимости. Однако Вы не можете измениться
contentsсвойство уровня представления снимка; попытки сделать так сбой тихо. Если текущее представление еще не представляется, возможно потому что это еще не является экранным, представление снимка не имеет никакого видимого содержания.Можно вызвать этот метод на ранее сгенерированном снимке для получения нового снимка. Например, Вы могли сделать так после того, как Вы изменяете свойства предыдущего снимка (такие как его альфа-значение) и хотите новый снимок, включающий те изменения.
Если Вы хотите применить графический эффект, такой как размытость, к снимку, используйте
drawViewHierarchyInRect:afterScreenUpdates:метод вместо этого.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
-
resizableSnapshotViewFromRect (_: afterScreenUpdates:withCapInsets:) - resizableSnapshotViewFromRect:afterScreenUpdates:withCapInsets:Возвращает представление снимка на основе указанного содержания текущего представления, с поддающимися растягиванию вставками.
Объявление
Swift
func resizableSnapshotViewFromRect(_rect: CGRect, afterScreenUpdatesafterUpdates: Bool, withCapInsetscapInsets: UIEdgeInsets) -> UIViewObjective C
- (UIView *)resizableSnapshotViewFromRect:(CGRect)rectafterScreenUpdates:(BOOL)afterUpdateswithCapInsets:(UIEdgeInsets)capInsetsПараметры
rectЧасть представления, что Вы хотите получить. Прямоугольник должен быть в координатном пространстве границ текущего представления.
afterUpdatesБыло включено булево значение, указывающее, должен ли снимок быть взят после недавних изменений. Передайте значение
NOfalseесли Вы хотите получить экран в его текущем состоянии, которое не могло бы включать недавние изменения.capInsetsГраничные вставки, определяющие поддающуюся растягиванию часть содержания возвращенного представления. Можно указать
UIEdgeInsetsZeroесли Вы не хотите, чтобы содержание возвращенного представления имело поддающуюся растягиванию область.Возвращаемое значение
Новый объект представления, содержащий снимок представленного содержания текущего представления.
Обсуждение
Этот метод очень эффективно получает текущее представленное появление представления и использует его для создания нового представления снимка с поддающимися растягиванию вставками. Можно использовать возвращенное представление в качестве визуального заместителя для текущего представления в приложении. Например, Вы могли бы использовать представление снимка для анимаций, где обновление большой иерархии представления могло бы быть дорогим. Поскольку содержание получено от уже представленного содержания, этот метод отражает текущее визуальное появление представления и не обновляется для отражения анимаций, планирующихся или происходящих. Однако вызов этого метода быстрее, чем попытка представить содержание текущего представления в растровое изображение самостоятельно.
Поскольку возвращенный снимок является объектом представления, можно изменить его и его расположенный на слое объект по мере необходимости. Однако Вы не можете измениться
contentsсвойство уровня представления снимка; попытки сделать так сбой тихо. Если текущее представление еще не представляется, возможно потому что это еще не является экранным, представление снимка не имеет никакого видимого содержания.Можно вызвать этот метод на ранее сгенерированном снимке для получения нового снимка. Например, Вы могли сделать так после того, как Вы изменяете свойства предыдущего снимка (такие как его альфа-значение) и хотите новый снимок, включающий те изменения.
Если Вы хотите применить графический эффект, такой как размытость, к снимку, используйте
drawViewHierarchyInRect:afterScreenUpdates:метод вместо этого.Если Вы указываете, что ненулевой край вставляет в
capInsetsпараметр, те значения определяют поддающуюся растягиванию предметную область возвращенного снимка.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
-
Представляет снимок иерархии полного представления как видимый на экране в текущий контекст.
Объявление
Swift
func drawViewHierarchyInRect(_rect: CGRect, afterScreenUpdatesafterUpdates: Bool) -> BoolObjective C
- (BOOL)drawViewHierarchyInRect:(CGRect)rectafterScreenUpdates:(BOOL)afterUpdatesПараметры
rectПрямоугольник указан в системе локальной координаты (границы) представления.
afterUpdatesБыло включено булево значение, указывающее, должен ли снимок быть представлен после недавних изменений. Укажите значение
NOfalseесли Вы хотите представить снимок в текущем состоянии иерархии представления, которое не могло бы включать недавние изменения.Возвращаемое значение
Возвраты
YEStrueесли снимок завершен, илиNOfalseесли снимок пропускает данные изображения для какого-либо представления в иерархии.Обсуждение
Используйте этот метод, когда Вы захотите применить графический эффект, такой как размытость, к снимку представления. Этот метод не с такой скоростью, как
snapshotViewAfterScreenUpdates:метод.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
См. также
-
tagСвойствоЦелое число, которое можно использовать для идентификации объектов представления в приложении.
Обсуждение
Значение по умолчанию
0. Можно установить значение этого тега и использования, оценивающих для идентификации представления позже.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Возвращает представление, тег которого соответствует указанное значение.
Объявление
Objective C
- (UIView *)viewWithTag:(NSInteger)tagПараметры
tagЗначение тега для поиска.
Возвращаемое значение
Представление в иерархии получателя, свойство тегов которой соответствует значение в
tagпараметр.Обсуждение
Этот метод ищет текущее представление и все его подпредставления для указанного представления.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Преобразовывает точку от системы координат получателя до того из указанного представления.
Объявление
Параметры
pointТочка указана в системе локальной координаты (границы) получателя.
viewПредставление то, в чей систему координат
pointдолжен быть преобразован. Еслиviewnil, этот метод вместо этого преобразовывает в координаты основы окна. Иначе, обаviewи получатель должен принадлежать тому жеUIWindowобъект.Возвращаемое значение
Точка, преобразованная в систему координат
view.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Преобразовывает точку из системы координат высказанного мнения к тому из получателя.
Объявление
Параметры
pointТочка указала в системе локальной координаты (границы)
view.viewПредставление с
pointв его системе координат. Еслиviewnil, этот метод вместо этого преобразовывает из координат основы окна. Иначе, обаviewи получатель должен принадлежать тому жеUIWindowобъект.Возвращаемое значение
Точка, преобразованная в систему локальной координаты (границы) получателя.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Преобразовывает прямоугольник от системы координат получателя до того из другого представления.
Объявление
Параметры
rectПрямоугольник указан в системе локальной координаты (границы) получателя.
viewПредставление, которое является целью работы преобразования. Если
viewnil, этот метод вместо этого преобразовывает в координаты основы окна. Иначе, обаviewи получатель должен принадлежать тому жеUIWindowобъект.Возвращаемое значение
Преобразованный прямоугольник.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Преобразовывает прямоугольник из системы координат другого представления к тому из получателя.
Объявление
Параметры
rectПрямоугольник указал в системе локальной координаты (границы)
view.viewПредставление с
rectв его системе координат. Еслиviewnil, этот метод вместо этого преобразовывает из координат основы окна. Иначе, обаviewи получатель должен принадлежать тому жеUIWindowобъект.Возвращаемое значение
Преобразованный прямоугольник.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Возвращает самого дальнего потомка получателя в иерархии представления (включая себя), который содержит указанную точку.
Объявление
Параметры
pointТочка указана в системе локальной координаты получателя (границы).
eventСобытие, гарантировавшее вызов к этому методу. При вызове этого метода извне кода обработки событий можно указать
nil.Возвращаемое значение
Объект представления, который является самым дальним потомком текущее представление и содержит
point. Возвратыnilесли точка находится полностью вне иерархии представления получателя.Обсуждение
Этот метод пересекает иерархию представления путем вызова
pointInside:withEvent:метод каждого подпредставления для определения, какое подпредставление должно получить сенсорное событие. ЕслиpointInside:withEvent:возвратыYEStrue, тогда иерархия подпредставления так же пересечена, пока представление frontmost, содержащее указанную точку, не найдено. Если представление не содержит точку, ее ответвление иерархии представления проигнорировано. Редко необходимо вызывать этот метод сами, но Вы могли бы переопределить его для сокрытия сенсорных событий от подпредставлений.Этот метод игнорирует объекты представления, которые скрыты, которые отключили взаимодействие с пользователем или имеют альфа-уровень меньше, чем
0.01. Этот метод не принимает содержание представления во внимание при определении хита. Таким образом, даже если указанная точка находится в прозрачной части содержания того представления, представление может все еще быть возвращено.О точках, лежащих вне границ получателя, никогда не сообщают как хиты, даже если они фактически лежат в одном из подпредставлений получателя. Это может произойти если текущее представление
clipsToBoundsсвойство установлено вNOfalseи затронутое подпредставление расширяется вне границ представления.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Возвращает булево значение, указывающее, содержит ли получатель указанную точку.
Объявление
Параметры
pointТочка, которая находится в системе локальной координаты получателя (границы).
eventСобытие, гарантировавшее вызов к этому методу. При вызове этого метода извне кода обработки событий можно указать
nil.Возвращаемое значение
YEStrueеслиpointв границах получателя; иначе,NOfalse.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Заставляет представление (или одно из его встроенных текстовых полей) оставлять первое состояние респондента.
Объявление
Swift
func endEditing(_force: Bool) -> BoolObjective C
- (BOOL)endEditing:(BOOL)forceПараметры
forceУказать
YEStrueвынудить первого респондента, который уйдет в отставку, независимо от того, хочет ли это сделать так.Возвращаемое значение
YEStrueесли представление оставило первое состояние респондента илиNOfalseесли это не сделало.Обсуждение
Этот метод смотрит на текущее представление и его иерархию подпредставления для текстового поля, которое в настоящее время является первым респондентом. Если это находит один, это просит что текстовое поле уходить в отставку с должности первого респондента. Если
forceпараметр устанавливается наYEStrue, текстовое поле даже не спрашивают; это вынуждено уйти в отставку.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Говорит представлению, что было добавлено подпредставление.
Объявление
Swift
func didAddSubview(_subview: UIView)Objective C
- (void)didAddSubview:(UIView *)subviewПараметры
subviewПредставление, добавленное как подпредставление.
Обсуждение
Реализация по умолчанию этого метода ничего не делает. Когда подпредставления добавляются, подклассы могут переопределить его для выполнения дополнительных действий. Этот метод вызывают в ответ на добавление подпредставления с помощью любого из соответствующих методов просмотра.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
Говорит представлению, что подпредставление собирается быть удаленным.
Объявление
Swift
func willRemoveSubview(_subview: UIView)Objective C
- (void)willRemoveSubview:(UIView *)subviewПараметры
subviewПодпредставление, которое будет удалено.
Обсуждение
Реализация по умолчанию этого метода ничего не делает. Подклассы могут переопределить его для выполнения дополнительных действий каждый раз, когда удалены подпредставления. Этот метод вызывают, когда суперпредставление подпредставления изменяется или когда подпредставление удалено из иерархии представления полностью.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Говорит представлению, что его суперпредставление собирается измениться на указанное суперпредставление.
Объявление
Swift
func willMoveToSuperview(_newSuperview: UIView?)Objective C
- (void)willMoveToSuperview:(UIView *)newSuperviewПараметры
newSuperviewОбъект представления, который будет новым суперпредставлением получателя. Этот объект может быть
nil.Обсуждение
Реализация по умолчанию этого метода ничего не делает. Подклассы могут переопределить его для выполнения дополнительных действий каждый раз, когда изменяется суперпредставление.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Говорит представлению, что изменилось его суперпредставление.
Объявление
Swift
func didMoveToSuperview()Objective C
- (void)didMoveToSuperviewОбсуждение
Реализация по умолчанию этого метода ничего не делает. Подклассы могут переопределить его для выполнения дополнительных действий каждый раз, когда изменяется суперпредставление.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Говорит представлению, что его объект окна собирается измениться.
Объявление
Swift
func willMoveToWindow(_newWindow: UIWindow?)Objective C
- (void)willMoveToWindow:(UIWindow *)newWindowПараметры
newWindowОбъект окна, который будет в корне новой иерархии представления получателя. Этот параметр может быть
nil.Обсуждение
Реализация по умолчанию этого метода ничего не делает. Подклассы могут переопределить его для выполнения дополнительных действий каждый раз, когда изменяется окно.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
-
Говорит представлению, что изменился его объект окна.
Объявление
Swift
func didMoveToWindow()Objective C
- (void)didMoveToWindowОбсуждение
Реализация по умолчанию этого метода ничего не делает. Подклассы могут переопределить его для выполнения дополнительных действий каждый раз, когда изменяется окно.
windowсвойство может бытьnilк тому времени, когда этот метод вызывают, указывая, что получатель в настоящее время не находится ни в каком окне. Это происходит, когда получатель был просто удален из его суперпредставления или когда получатель был просто добавлен к суперпредставлению, которое не присоединено к окну. Переопределения этого метода могут принять решение игнорировать такие регистры, если они не имеют интереса.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
См. также
Типы данных
-
Опции для анимации использования представлений блокируют объекты.
Объявление
Swift
struct UIViewAnimationOptions : RawOptionSetType { init(_rawValue: UInt) init(rawValuerawValue: UInt) static var LayoutSubviews: UIViewAnimationOptions { get } static var AllowUserInteraction: UIViewAnimationOptions { get } static var BeginFromCurrentState: UIViewAnimationOptions { get } static var Repeat: UIViewAnimationOptions { get } static var Autoreverse: UIViewAnimationOptions { get } static var OverrideInheritedDuration: UIViewAnimationOptions { get } static var OverrideInheritedCurve: UIViewAnimationOptions { get } static var AllowAnimatedContent: UIViewAnimationOptions { get } static var ShowHideTransitionViews: UIViewAnimationOptions { get } static var OverrideInheritedOptions: UIViewAnimationOptions { get } static var CurveEaseInOut: UIViewAnimationOptions { get } static var CurveEaseIn: UIViewAnimationOptions { get } static var CurveEaseOut: UIViewAnimationOptions { get } static var CurveLinear: UIViewAnimationOptions { get } static var TransitionNone: UIViewAnimationOptions { get } static var TransitionFlipFromLeft: UIViewAnimationOptions { get } static var TransitionFlipFromRight: UIViewAnimationOptions { get } static var TransitionCurlUp: UIViewAnimationOptions { get } static var TransitionCurlDown: UIViewAnimationOptions { get } static var TransitionCrossDissolve: UIViewAnimationOptions { get } static var TransitionFlipFromTop: UIViewAnimationOptions { get } static var TransitionFlipFromBottom: UIViewAnimationOptions { get } }Objective C
enum { UIViewAnimationOptionLayoutSubviews = 1 << 0, UIViewAnimationOptionAllowUserInteraction = 1 << 1, UIViewAnimationOptionBeginFromCurrentState = 1 << 2, UIViewAnimationOptionRepeat = 1 << 3, UIViewAnimationOptionAutoreverse = 1 << 4, UIViewAnimationOptionOverrideInheritedDuration = 1 << 5, UIViewAnimationOptionOverrideInheritedCurve = 1 << 6, UIViewAnimationOptionAllowAnimatedContent = 1 << 7, UIViewAnimationOptionShowHideTransitionViews = 1 << 8, UIViewAnimationOptionOverrideInheritedOptions = 1 << 9, UIViewAnimationOptionCurveEaseInOut = 0 << 16, UIViewAnimationOptionCurveEaseIn = 1 << 16, UIViewAnimationOptionCurveEaseOut = 2 << 16, UIViewAnimationOptionCurveLinear = 3 << 16, UIViewAnimationOptionTransitionNone = 0 << 20, UIViewAnimationOptionTransitionFlipFromLeft = 1 << 20, UIViewAnimationOptionTransitionFlipFromRight = 2 << 20, UIViewAnimationOptionTransitionCurlUp = 3 << 20, UIViewAnimationOptionTransitionCurlDown = 4 << 20, UIViewAnimationOptionTransitionCrossDissolve = 5 << 20, UIViewAnimationOptionTransitionFlipFromTop = 6 << 20, UIViewAnimationOptionTransitionFlipFromBottom = 7 << 20, }; typedef NSUInteger UIViewAnimationOptions;Константы
-
LayoutSubviewsUIViewAnimationOptionLayoutSubviewsРазметьте подпредставления во время фиксации так, чтобы они были анимированы вместе с их родителем.
Доступный в iOS 4.0 и позже.
-
AllowUserInteractionUIViewAnimationOptionAllowUserInteractionПозвольте пользователю взаимодействовать с представлениями, в то время как они анимируются.
Доступный в iOS 4.0 и позже.
-
BeginFromCurrentStateUIViewAnimationOptionBeginFromCurrentStateЗапустите анимацию с текущей установки, связанной с уже анимацией в полете. Если этот ключ не присутствует, любым анимациям в полете позволяют закончиться, прежде чем будет запущена новая анимация. Если другая анимация не находится в рейсе, этот ключ не имеет никакого эффекта.
Доступный в iOS 4.0 и позже.
-
RepeatUIViewAnimationOptionRepeatПовторите анимацию неопределенно.
Доступный в iOS 4.0 и позже.
-
AutoreverseUIViewAnimationOptionAutoreverseВыполните анимацию назад и вперед. Должен быть объединен с
UIViewAnimationOptionRepeatопция.Доступный в iOS 4.0 и позже.
-
OverrideInheritedDurationUIViewAnimationOptionOverrideInheritedDurationВынудите анимацию использовать значение исходной продолжительности, указанное, когда была представлена анимация. Если этот ключ не присутствует, анимация наследовала остающееся время анимации в полете, если таковые имеются.
Доступный в iOS 4.0 и позже.
-
OverrideInheritedCurveUIViewAnimationOptionOverrideInheritedCurveВынудите анимацию использовать исходное значение кривой, указанное, когда была представлена анимация. Если этот ключ не присутствует, анимация наследовала кривую анимации в полете, если таковые имеются.
Доступный в iOS 4.0 и позже.
-
AllowAnimatedContentUIViewAnimationOptionAllowAnimatedContentАнимируйте представления путем изменения значений свойств динамично и перерисовки представления. Если этот ключ не присутствует, представления анимированы с помощью изображения снимка.
Доступный в iOS 4.0 и позже.
-
ShowHideTransitionViewsUIViewAnimationOptionShowHideTransitionViewsКогда настоящее, этот ключ заставляет представления быть скрытыми или показанными (вместо удаленного или добавленного) при выполнении перехода представления. Оба представления должны уже присутствовать в иерархии родительского представления при использовании этого ключа. Если этот ключ не присутствует, к представлению в переходе добавляется к, и от представления удален из, список родительского представления подпредставлений.
Доступный в iOS 4.0 и позже.
-
OverrideInheritedOptionsUIViewAnimationOptionOverrideInheritedOptionsОпция не наследовать тип анимации или любые опции.
Доступный в iOS 4.0 и позже.
-
CurveEaseInOutUIViewAnimationOptionCurveEaseInOutПростота - в кривой простоты заставляет анимацию медленно начинаться, ускоряться в течение середины ее продолжительности, и затем замедляться снова перед завершением.
Доступный в iOS 4.0 и позже.
-
CurveEaseInUIViewAnimationOptionCurveEaseInПростота - в кривой заставляет анимацию медленно начинаться, и затем убыстряться, в то время как это развивается.
Доступный в iOS 4.0 и позже.
-
CurveEaseOutUIViewAnimationOptionCurveEaseOutКривая простоты заставляет анимацию начинаться быстро, и затем замедляться, как это завершается.
Доступный в iOS 4.0 и позже.
-
CurveLinearUIViewAnimationOptionCurveLinearКривая линейной анимации заставляет анимацию происходить равномерно по ее продолжительности.
Доступный в iOS 4.0 и позже.
-
TransitionNoneUIViewAnimationOptionTransitionNoneНикакой переход не указан.
Доступный в iOS 4.0 и позже.
-
TransitionFlipFromLeftUIViewAnimationOptionTransitionFlipFromLeftПереход, зеркально отражающий представление вокруг его вертикальной оси слева направо. Левая сторона представления перемещается к передней и правой стороне к спине.
Доступный в iOS 4.0 и позже.
-
TransitionFlipFromRightUIViewAnimationOptionTransitionFlipFromRightПереход, зеркально отражающий представление вокруг его вертикальной оси справа налево. Правая сторона представления перемещается к передней и левой стороне к спине.
Доступный в iOS 4.0 и позже.
-
TransitionCurlUpUIViewAnimationOptionTransitionCurlUpПереход, сражающий представление от нижней части.
Доступный в iOS 4.0 и позже.
-
TransitionCurlDownUIViewAnimationOptionTransitionCurlDownПереход, завихряющийся представление вниз от вершины.
Доступный в iOS 4.0 и позже.
-
TransitionCrossDissolveUIViewAnimationOptionTransitionCrossDissolveПереход, распадающийся от одного представления до следующего.
Доступный в iOS 4.0 и позже.
-
TransitionFlipFromTopUIViewAnimationOptionTransitionFlipFromTopПереход, зеркально отражающий представление вокруг его горизонтальной оси сверху донизу. Главная сторона представления перемещается к передней стороне и нижней стороне к спине.
Доступный в iOS 4.0 и позже.
-
TransitionFlipFromBottomUIViewAnimationOptionTransitionFlipFromBottomПереход, зеркально отражающий представление вокруг его горизонтальной оси от нижней части до вершины. Нижняя сторона представления перемещается к передней стороне и главной стороне к спине.
Доступный в iOS 4.0 и позже.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 4.0 и позже.
-
-
Указывает поддерживаемые кривые анимации.
Объявление
Swift
enum UIViewAnimationCurve : Int { case EaseInOut case EaseIn case EaseOut case Linear }Objective C
typedef enum { UIViewAnimationCurveEaseInOut, UIViewAnimationCurveEaseIn, UIViewAnimationCurveEaseOut, UIViewAnimationCurveLinear } UIViewAnimationCurve;Константы
-
EaseInOutUIViewAnimationCurveEaseInOutПростота - в кривой простоты заставляет анимацию медленно начинаться, ускоряться в течение середины ее продолжительности, и затем замедляться снова перед завершением. Это - кривая по умолчанию для большинства анимаций.
Доступный в iOS 2.0 и позже.
-
EaseInUIViewAnimationCurveEaseInПростота - в кривой заставляет анимацию медленно начинаться, и затем убыстряться, в то время как это развивается.
Доступный в iOS 2.0 и позже.
-
EaseOutUIViewAnimationCurveEaseOutКривая простоты заставляет анимацию начинаться быстро, и затем замедляться, как это завершается.
Доступный в iOS 2.0 и позже.
-
LinearUIViewAnimationCurveLinearКривая линейной анимации заставляет анимацию происходить равномерно по ее продолжительности.
Доступный в iOS 2.0 и позже.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
-
Опции указать, как представление корректирует свое содержание, когда изменяется его размер.
Объявление
Swift
enum UIViewContentMode : Int { case ScaleToFill case ScaleAspectFit case ScaleAspectFill case Redraw case Center case Top case Bottom case Left case Right case TopLeft case TopRight case BottomLeft case BottomRight }Objective C
typedef enum { UIViewContentModeScaleToFill, UIViewContentModeScaleAspectFit, UIViewContentModeScaleAspectFill, UIViewContentModeRedraw, UIViewContentModeCenter, UIViewContentModeTop, UIViewContentModeBottom, UIViewContentModeLeft, UIViewContentModeRight, UIViewContentModeTopLeft, UIViewContentModeTopRight, UIViewContentModeBottomLeft, UIViewContentModeBottomRight, } UIViewContentMode;Константы
-
ScaleToFillUIViewContentModeScaleToFillОпция масштабировать содержание для адаптации размеру себя путем изменения форматного соотношения содержания при необходимости.
Доступный в iOS 2.0 и позже.
-
ScaleAspectFitUIViewContentModeScaleAspectFitОпция масштабировать содержание для адаптации размеру представления путем поддержания форматного соотношения. Любая остающаяся область границ представления прозрачна.
Доступный в iOS 2.0 и позже.
-
ScaleAspectFillUIViewContentModeScaleAspectFillОпция масштабировать содержание для заполнения размера представления. Некоторая часть содержания может быть отсечена для заполнения границ представления.
Доступный в iOS 2.0 и позже.
-
RedrawUIViewContentModeRedrawОпция восстановить изображение представления, когда границы изменяются путем вызова
setNeedsDisplayметод.Доступный в iOS 2.0 и позже.
-
CenterUIViewContentModeCenterОпция центрировать содержание в границах представления, сохраняя пропорции тем же.
Доступный в iOS 2.0 и позже.
-
TopUIViewContentModeTopОпция центрировать содержание выровнялась наверху в границах представления.
Доступный в iOS 2.0 и позже.
-
BottomUIViewContentModeBottomОпция центрировать содержание выровнялась в нижней части в границах представления.
Доступный в iOS 2.0 и позже.
-
LeftUIViewContentModeLeftОпция выровнять содержание слева от представления.
Доступный в iOS 2.0 и позже.
-
RightUIViewContentModeRightОпция выровнять содержание справа от представления.
Доступный в iOS 2.0 и позже.
-
TopLeftUIViewContentModeTopLeftОпция выровнять содержание в верхнем левом углу представления.
Доступный в iOS 2.0 и позже.
-
TopRightUIViewContentModeTopRightОпция выровнять содержание в верхнем правом углу представления.
Доступный в iOS 2.0 и позже.
-
BottomLeftUIViewContentModeBottomLeftОпция выровнять содержание в нижнем левом углу представления.
Доступный в iOS 2.0 и позже.
-
BottomRightUIViewContentModeBottomRightОпция выровнять содержание в нижнем правом углу представления.
Доступный в iOS 2.0 и позже.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
-
Режим корректировки оттенка для представления.
Объявление
Swift
enum UIViewTintAdjustmentMode : Int { case Automatic case Normal case Dimmed }Objective C
typedef enum { UIViewTintAdjustmentModeAutomatic, UIViewTintAdjustmentModeNormal, UIViewTintAdjustmentModeDimmed, } UIViewTintAdjustmentMode;Константы
-
AutomaticUIViewTintAdjustmentModeAutomaticРежим корректировки оттенка представления совпадает с режимом корректировки оттенка своего суперпредставления (или
UIViewTintAdjustmentModeNormalесли представление не имеет никакого суперпредставления).Доступный в iOS 7.0 и позже.
-
NormalUIViewTintAdjustmentModeNormalПредставление
tintColorсвойство возвращает полностью неизмененный цвет оттенка представления.Доступный в iOS 7.0 и позже.
-
DimmedUIViewTintAdjustmentModeDimmedПредставление
tintColorсвойство возвращает desaturated, потускнел версия исходного цвета оттенка представления.Доступный в iOS 7.0 и позже.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
-
-
Опция удалить представления из иерархии, когда анимация завершена.
Объявление
Swift
enum UISystemAnimation : UInt { case Delete }Objective C
typedef enum{ UISystemAnimationDelete, } UISystemAnimation;Константы
-
DeleteUISystemAnimationDeleteОпция удалить представления из иерархии представления, когда анимация завершена.
Доступный в iOS 7.0 и позже.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
-
-
Опции для автоматического изменения размеров представления.
Объявление
Swift
struct UIViewAutoresizing : RawOptionSetType { init(_rawValue: UInt) init(rawValuerawValue: UInt) static var None: UIViewAutoresizing { get } static var FlexibleLeftMargin: UIViewAutoresizing { get } static var FlexibleWidth: UIViewAutoresizing { get } static var FlexibleRightMargin: UIViewAutoresizing { get } static var FlexibleTopMargin: UIViewAutoresizing { get } static var FlexibleHeight: UIViewAutoresizing { get } static var FlexibleBottomMargin: UIViewAutoresizing { get } }Objective C
enum { UIViewAutoresizingNone = 0, UIViewAutoresizingFlexibleLeftMargin = 1 << 0, UIViewAutoresizingFlexibleWidth = 1 << 1, UIViewAutoresizingFlexibleRightMargin = 1 << 2, UIViewAutoresizingFlexibleTopMargin = 1 << 3, UIViewAutoresizingFlexibleHeight = 1 << 4, UIViewAutoresizingFlexibleBottomMargin = 1 << 5 }; typedef NSUInteger UIViewAutoresizing;Константы
-
NoneUIViewAutoresizingNoneОпция для указания, что представление не изменяет размеры.
Доступный в iOS 2.0 и позже.
-
FlexibleLeftMarginUIViewAutoresizingFlexibleLeftMarginИзменение размеров выполняемого путем расширения или уменьшения представления в направлении левого поля.
Доступный в iOS 2.0 и позже.
-
FlexibleWidthUIViewAutoresizingFlexibleWidthИзменение размеров выполняемого путем расширения или уменьшения представления width.
Доступный в iOS 2.0 и позже.
-
FlexibleRightMarginUIViewAutoresizingFlexibleRightMarginИзменение размеров выполняемого путем расширения или уменьшения представления в направлении правого поля.
Доступный в iOS 2.0 и позже.
-
FlexibleTopMarginUIViewAutoresizingFlexibleTopMarginИзменение размеров выполняемого путем расширения или уменьшения представления в направлении верхнего поля.
Доступный в iOS 2.0 и позже.
-
FlexibleHeightUIViewAutoresizingFlexibleHeightИзменение размеров выполняемого путем расширения или уменьшения высоты представления.
Доступный в iOS 2.0 и позже.
-
FlexibleBottomMarginUIViewAutoresizingFlexibleBottomMarginИзменение размеров выполняемого путем расширения или уменьшения представления в направлении нижнего поля.
Доступный в iOS 2.0 и позже.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
-
Опции перехода анимации для использования в анимации блокируют объект.
Объявление
Swift
enum UIViewAnimationTransition : Int { case None case FlipFromLeft case FlipFromRight case CurlUp case CurlDown }Objective C
typedef enum { UIViewAnimationTransitionNone, UIViewAnimationTransitionFlipFromLeft, UIViewAnimationTransitionFlipFromRight, UIViewAnimationTransitionCurlUp, UIViewAnimationTransitionCurlDown, } UIViewAnimationTransition;Константы
-
NoneUIViewAnimationTransitionNoneОпция для указания, что не указан никакой переход.
Доступный в iOS 2.0 и позже.
-
FlipFromLeftUIViewAnimationTransitionFlipFromLeftПереход, зеркально отражающий представление вокруг вертикальной оси слева направо. Левая сторона представления двигает переднюю и правую сторону к спине.
Доступный в iOS 2.0 и позже.
-
FlipFromRightUIViewAnimationTransitionFlipFromRightПереход, зеркально отражающий представление вокруг вертикальной оси справа налево. Правая сторона представления двигает переднюю и левую сторону к спине.
Доступный в iOS 2.0 и позже.
-
CurlUpUIViewAnimationTransitionCurlUpПереход, сражающий представление от нижней части.
Доступный в iOS 2.0 и позже.
-
CurlDownUIViewAnimationTransitionCurlDownПереход, завихряющийся представление вниз от вершины.
Доступный в iOS 2.0 и позже.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 2.0 и позже.
-
-
Опции анимации ключевых кадров, используемые с
animateKeyframesWithDuration:delay:options:animations:completion:метод.Объявление
Swift
struct UIViewKeyframeAnimationOptions : RawOptionSetType { init(_rawValue: UInt) init(rawValuerawValue: UInt) static var LayoutSubviews: UIViewKeyframeAnimationOptions { get } static var AllowUserInteraction: UIViewKeyframeAnimationOptions { get } static var BeginFromCurrentState: UIViewKeyframeAnimationOptions { get } static var Repeat: UIViewKeyframeAnimationOptions { get } static var Autoreverse: UIViewKeyframeAnimationOptions { get } static var OverrideInheritedDuration: UIViewKeyframeAnimationOptions { get } static var OverrideInheritedOptions: UIViewKeyframeAnimationOptions { get } static var CalculationModeLinear: UIViewKeyframeAnimationOptions { get } static var CalculationModeDiscrete: UIViewKeyframeAnimationOptions { get } static var CalculationModePaced: UIViewKeyframeAnimationOptions { get } static var CalculationModeCubic: UIViewKeyframeAnimationOptions { get } static var CalculationModeCubicPaced: UIViewKeyframeAnimationOptions { get } }Objective C
typedef enum { UIViewKeyframeAnimationOptionLayoutSubviews = UIViewAnimationOptionLayoutSubviews, UIViewKeyframeAnimationOptionAllowUserInteraction = UIViewAnimationOptionAllowUserInteraction, UIViewKeyframeAnimationOptionBeginFromCurrentState = UIViewAnimationOptionBeginFromCurrentState, UIViewKeyframeAnimationOptionRepeat = UIViewAnimationOptionRepeat, UIViewKeyframeAnimationOptionAutoreverse = UIViewAnimationOptionAutoreverse, UIViewKeyframeAnimationOptionOverrideInheritedDuration = UIViewAnimationOptionOverrideInheritedDuration, UIViewKeyframeAnimationOptionOverrideInheritedOptions = UIViewAnimationOptionOverrideInheritedOptions, UIViewKeyframeAnimationOptionCalculationModeLinear = 0 << 9, UIViewKeyframeAnimationOptionCalculationModeDiscrete = 1 << 9, UIViewKeyframeAnimationOptionCalculationModePaced = 2 << 9, UIViewKeyframeAnimationOptionCalculationModeCubic = 3 << 9, UIViewKeyframeAnimationOptionCalculationModeCubicPaced = 4 << 9 } UIViewKeyframeAnimationOptions;Константы
-
LayoutSubviewsUIViewKeyframeAnimationOptionLayoutSubviewsОпция разметить подпредставления во время фиксации так, чтобы они были анимированы вместе с их родителем.
Доступный в iOS 7.0 и позже.
-
AllowUserInteractionUIViewKeyframeAnimationOptionAllowUserInteractionОпция, позволяющая пользователю взаимодействовать с представлениями, в то время как они анимируются.
Доступный в iOS 7.0 и позже.
-
BeginFromCurrentStateUIViewKeyframeAnimationOptionBeginFromCurrentStateОпция запустить анимацию с текущей установки связалась с уже анимацией в полете. Если эта опция не присутствует, любым анимациям в полете позволяют закончиться, прежде чем будет запущена новая анимация. Если другая анимация не находится в рейсе, эта опция не имеет никакого эффекта.
Доступный в iOS 7.0 и позже.
-
RepeatUIViewKeyframeAnimationOptionRepeatОпция повторить анимацию неопределенно.
Доступный в iOS 7.0 и позже.
-
AutoreverseUIViewKeyframeAnimationOptionAutoreverseОпция выполнить анимацию назад и вперед. Должен быть объединен с
UIViewKeyframeAnimationOptionRepeatопция.Доступный в iOS 7.0 и позже.
-
OverrideInheritedDurationUIViewKeyframeAnimationOptionOverrideInheritedDurationКогда анимация была представлена, опция вынудить анимацию использовать значение исходной продолжительности указала. Если эта опция не присутствует, анимация наследовала остающееся время анимации в полете, если таковые имеются.
Доступный в iOS 7.0 и позже.
-
OverrideInheritedOptionsUIViewKeyframeAnimationOptionOverrideInheritedOptionsОпция не наследовать тип анимации или любые опции.
Доступный в iOS 7.0 и позже.
-
CalculationModeLinearUIViewKeyframeAnimationOptionCalculationModeLinearОпция использовать простое линейное вычисление при интерполяции между значениями ключевого кадра.
Доступный в iOS 7.0 и позже.
-
CalculationModeDiscreteUIViewKeyframeAnimationOptionCalculationModeDiscreteОпция не интерполировать между значениями ключевого кадра, а скорее перейти непосредственно к каждому новому значению ключевого кадра.
Доступный в iOS 7.0 и позже.
-
CalculationModePacedUIViewKeyframeAnimationOptionCalculationModePacedОпция вычислить промежуточные значения ключевого кадра с помощью простого следующего алгоритма. Эта опция приводит к равномерно измеренной шагами анимации.
Доступный в iOS 7.0 и позже.
-
CalculationModeCubicUIViewKeyframeAnimationOptionCalculationModeCubicОпция вычислить промежуточные кадры с помощью шлица Catmull-Rom по умолчанию, проходящего через значения ключевого кадра. Вы не можете скорректировать параметры этого алгоритма.
Доступный в iOS 7.0 и позже.
-
CalculationModeCubicPacedUIViewKeyframeAnimationOptionCalculationModeCubicPacedОпция вычислить промежуточные кадры с помощью кубической схемы при игнорировании свойств синхронизации анимации. Вместо этого синхронизирующие параметры вычисляются неявно, чтобы дать анимации постоянную скорость.
Доступный в iOS 7.0 и позже.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 7.0 и позже.
-
-
Ключи, указывающие ограничение горизонтального или вертикального макета между объектами.
Объявление
Swift
enum UILayoutConstraintAxis : Int { case Horizontal case Vertical }Objective C
enum { UILayoutConstraintAxisHorizontal = 0, UILayoutConstraintAxisVertical = 1 }; typedef NSInteger UILayoutConstraintAxis;Константы
-
HorizontalUILayoutConstraintAxisHorizontalОграничение применялось при разметке горизонтального отношения между объектами.
Доступный в iOS 6.0 и позже.
-
VerticalUILayoutConstraintAxisVerticalОграничение применялось при разметке вертикального отношения между объектами.
Доступный в iOS 6.0 и позже.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
-
Представление подходящие опции, используемые в
systemLayoutSizeFittingSize:метод.Объявление
Objective C
const CGSize UILayoutFittingCompressedSize; const CGSize UILayoutFittingExpandedSize;Константы
-
Опция указать, что представление не имеет никакой внутренней метрики для данного числового свойства.
Объявление
Swift
let UIViewNoIntrinsicMetric: CGFloatObjective C
const CGFloat UIViewNoIntrinsicMetric;Константы
