NSLayoutConstraint
Оператор импорта
Swift
import UIKit
Objective C
@import UIKit;
Доступность
Доступный в iOS 6.0 и позже.
Ограничение определяет отношение между двумя объектами пользовательского интерфейса, которые должны быть удовлетворены системой расположения на основе ограничений. Каждое ограничение является линейным уравнением со следующим форматом:
item1.attribute1 = multiplier × item2.attribute2 + constant
В этом уравнении, attribute1
и attribute2
переменные, которые Автоматическое Расположение может скорректировать при решении этих ограничений. Другие значения определяются при создании ограничения. Например, при определении относительной позиции двух кнопок Вы могли бы сказать, что “передний фронт второй кнопки должен быть 8 точками после заднего фронта первой кнопки”. Линейное уравнение для этого отношения показано ниже:
// positive values move to the right in left-to-right languages like English.
button2.leading = 1.0 × button1.trailing + 8.0
Автоматическое Расположение тогда изменяет значения указанных передних и задних фронтов, пока обе стороны уравнения не равны. Обратите внимание на то, что Автоматическое Расположение просто не присваивает значение правой стороны этого уравнения к левой стороне. Вместо этого система может изменить или атрибут или оба атрибута по мере необходимости для решения для этого ограничения.
Факт, что ограничения являются уравнениями (и не операторы присваивания) означает, что можно переключиться, порядок элементов в уравнении по мере необходимости к более ясно выражают желаемое отношение. Однако при переключении порядка необходимо также инвертировать множитель и постоянный. Например, следующие два уравнения производят идентичные ограничения:
// These equations produce identical constraints
button2.leading = 1.0 × button1.trailing + 8.0
button1.trailing = 1.0 × button2.leading - 8.0
Допустимое расположение определяется как набор ограничения с одним и только одним возможным решением. Допустимые разметки также упоминаются как ненеоднозначные, неконфликтные разметки. Ограничения больше чем с одним решением неоднозначны. Ограничения без допустимых решений конфликтуют. Для получения дополнительной информации о разрешении неоднозначных и конфликтных ограничений посмотрите Решающие Автоматические Вопросы Расположения в Автоматическом Руководстве по Расположению..
Кроме того, ограничения не ограничиваются отношениями равенства. Они могут также использовать больше, чем или равняться (> =) или меньше чем или равный (<=) для описания отношения между двумя атрибутами. Ограничения также имеют приоритеты между 1 и 1,000. Ограничения с приоритетом 1 000 требуются. Все приоритеты меньше чем 1 000 являются дополнительными. По умолчанию все ограничения требуются (приоритет = 1,000).
После решения для необходимых ограничений Автоматическое Расположение пытается решить все дополнительные ограничения в порядке приоритетов от самого высокого до самого низкого. Если это не может решить для дополнительного ограничения, это пытается как почти достичь как возможное желаемого результата, и затем идет дальше к следующему ограничению.
Эта комбинация неравенств, равенств и приоритетов дает Вам большую сумму гибкости и питания. Путем объединения многократных ограничений можно определить разметки, динамично адаптирующиеся как размер и расположение элементов в изменении пользовательского интерфейса.
-
constraintsWithVisualFormat (_: options:metrics:views:) + constraintsWithVisualFormat:options:metrics:views:
Создает ограничения, описанные подобной ASCII-творчеству визуальной строкой формата.
Объявление
Swift
class func constraintsWithVisualFormat(_
format
: String, optionsopts
: NSLayoutFormatOptions, metricsmetrics
: [NSObject : AnyObject]?, viewsviews
: [NSObject : AnyObject]) -> [AnyObject]Objective C
+ (NSArray *)constraintsWithVisualFormat:(NSString *)
format
options:(NSLayoutFormatOptions)opts
metrics:(NSDictionary *)metrics
views:(NSDictionary *)views
Параметры
format
Спецификация формата для ограничений. Для получения дополнительной информации посмотрите Визуальный Язык Формата в Автоматическом Руководстве по Расположению.
opts
Опции, описывающие атрибут и направление расположения для всех объектов в визуальной строке формата.
metrics
Словарь констант, появляющихся в визуальной строке формата. Ключи словаря должны быть строковыми значениями, используемыми в визуальной строке формата. Их значения должны быть
NSNumber
объекты.views
Словарь представлений, появляющихся в визуальной строке формата. Ключи должны быть строковыми значениями, используемыми в визуальной строке формата, и значения должны быть объектами представления.
Возвращаемое значение
Массив ограничений, что, объединенный, выражают ограничения между предоставленными представлениями и их родительским представлением, как описано визуальной строкой формата. Ограничения возвращаются в том же порядке, они были указаны в визуальной строке формата.
Обсуждение
Язык, используемый для визуальной строки формата, описан на Визуальном Языке Формата в Автоматическом Руководстве по Расположению.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-
init (item:attribute:relatedBy:toItem:attribute:multiplier:constant:) + constraintWithItem:attribute:relatedBy:toItem:attribute:multiplier:constant:
Создает ограничение, определяющее отношение между указанными атрибутами высказанных мнений.
Объявление
Swift
convenience init(item
view1
: AnyObject, attributeattr1
: NSLayoutAttribute, relatedByrelation
: NSLayoutRelation, toItemview2
: AnyObject?, attributeattr2
: NSLayoutAttribute, multipliermultiplier
: CGFloat, constantc
: CGFloat)Objective C
+ (instancetype)constraintWithItem:(id)
view1
attribute:(NSLayoutAttribute)attr1
relatedBy:(NSLayoutRelation)relation
toItem:(id)view2
attribute:(NSLayoutAttribute)attr2
multiplier:(CGFloat)multiplier
constant:(CGFloat)c
Параметры
view1
Представление для левой стороны ограничения.
attr1
Атрибут представления для левой стороны ограничения.
relation
Отношение между левой стороной ограничения и правой стороной ограничения.
view2
Представление для правой стороны ограничения.
attr2
Атрибут представления для правой стороны ограничения.
multiplier
Константа умножилась с атрибутом на правой стороне ограничения как часть получения измененного атрибута.
c
Константа, добавленная к умноженному значению атрибута на правой стороне ограничения для получения финала, изменила атрибут.
Возвращаемое значение
Ограничительный объект связь двух предоставленных представлений с указанным отношением, атрибутами, множителем, и постоянный.
Обсуждение
Ограничения представляют линейные уравнения формы
view1.attr1 <relation> multiplier × view2.attr2 + c
. Если ограничение, которое Вы хотите выразить, не имеет второго представления и атрибута, использоватьnil
иNSLayoutAttributeNotAnAttribute
.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-
active
СвойствоАктивное состояние ограничения.
Объявление
Swift
var active: Bool
Objective C
@property(getter=isActive) BOOL active
Обсуждение
Можно активировать или деактивировать ограничение путем изменения этого свойства. Обратите внимание на то, что только активные ограничения влияют на расчетное расположение. При попытке активировать ограничение, элементы которого не имеют никакого общего предка, исключение выдается. Для недавно создаваемых ограничений,
active
свойствоNO
false
по умолчанию.Активация или деактивация ограничительных вызовов
addConstraint:
иremoveConstraint:
на представлении, которое является самым близким общим предком элементов, которыми управляет это ограничение. Используйте это свойство вместо вызоваaddConstraint:
илиremoveConstraint:
непосредственно.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
Активирует каждое ограничение в указанном массиве.
Объявление
Swift
class func activateConstraints(_
constraints
: [AnyObject])Objective C
+ (void)activateConstraints:(NSArray *)
constraints
Параметры
constraints
Массив ограничений для активации.
Обсуждение
Этот удобный метод обеспечивает простой способ активировать ряд ограничений одним вызовом. Эффект этого метода совпадает с установкой
active
свойство каждого ограничения кYES
true
. Как правило, использование этого метода более эффективно, чем активация каждого ограничения индивидуально.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
Деактивировал каждое ограничение в указанном массиве.
Объявление
Swift
class func deactivateConstraints(_
constraints
: [AnyObject])Objective C
+ (void)deactivateConstraints:(NSArray *)
constraints
Параметры
constraints
Массив ограничений для деактивации.
Обсуждение
Это - удобный метод, обеспечивающий простой способ деактивировать ряд ограничений с одним вызовом. Эффект этого метода совпадает с установкой
active
свойство каждого ограничения кNO
false
. Как правило, использование этого метода более эффективно, чем деактивация каждого ограничения индивидуально.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
priority
СвойствоПриоритет ограничения.
Обсуждение
Если приоритетный уровень ограничения является меньше, чем
UILayoutPriorityRequired
в OS X илиUILayoutPriorityRequired
в iOS тогда это является дополнительным. Более высокие приоритетные ограничения встречены перед более низкими приоритетными ограничениями.Ограничительная удовлетворенность не все или ничего. Если ограничение
a == b
является дополнительным, система расположения на основе ограничений попытается минимизироватьabs(a-b)
.Приоритеты могут не измениться от нетребуемого до требуемого, или от требуемого до нетребуемого. Исключение будет выдано если приоритет
NSLayoutPriorityRequired
в OS X илиUILayoutPriorityRequired
в iOS изменяется на более низкий приоритет, или если более низкий приоритет изменяется на требуемый приоритет после того, как ограничения добавляются к представлению. Изменение от одного дополнительного приоритета до другого дополнительного приоритета позволяется даже после того, как ограничение установлено на представлении.Приоритеты должны быть больше, чем 0 и меньше чем или равными
NSLayoutPriorityRequired
в OS X илиUILayoutPriorityRequired
в iOS.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-
firstItem
СвойствоПервый объект, участвующий в ограничении.
Объявление
Swift
unowned(unsafe) var firstItem: AnyObject { get }
Objective C
@property(readonly, assign) id firstItem
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-
firstAttribute
СвойствоАтрибут первого объекта, участвующего в ограничении.
Объявление
Swift
var firstAttribute: NSLayoutAttribute { get }
Objective C
@property(readonly) NSLayoutAttribute firstAttribute
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-
relation
СвойствоОтношение между двумя атрибутами в ограничении.
Объявление
Swift
var relation: NSLayoutRelation { get }
Objective C
@property(readonly) NSLayoutRelation relation
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-
secondItem
СвойствоВторой объект, участвующий в ограничении.
Объявление
Swift
unowned(unsafe) var secondItem: AnyObject? { get }
Objective C
@property(readonly, assign) id secondItem
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-
secondAttribute
СвойствоАтрибут второго объекта, участвующего в ограничении.
Объявление
Swift
var secondAttribute: NSLayoutAttribute { get }
Objective C
@property(readonly) NSLayoutAttribute secondAttribute
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-
multiplier
СвойствоМножитель применился к второму атрибуту, участвующему в ограничении.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-
constant
СвойствоКонстанта, добавленная к умноженному второму атрибуту, участвующему в ограничении.
Обсуждение
В отличие от других свойств, константа может быть изменена после ограничительного создания. Установка константы на существующем ограничении выполняет намного лучше, чем удаление ограничения и добавление нового, это точно походит на старое за исключением того, что это имеет различную константу.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-
identifier
СвойствоИмя, идентифицирующее ограничение.
Обсуждение
Идентификатор ограничения доступен в своем описании. Идентификаторы, запускающиеся с
NS
резервируются системой.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
shouldBeArchived
СвойствоБулево значение, определяющее, должно ли ограничение быть заархивировано его представлением владения.
Объявление
Swift
var shouldBeArchived: Bool
Objective C
@property BOOL shouldBeArchived
Обсуждение
Когда представление архивируется, оно архивирует некоторых, но не все ограничения в
constraints
массив. ЗначениеshouldBeArchived
если определенное ограничение должно быть заархивировано представлением, сообщает представлению.Если ограничение создается во время выполнения в ответ на состояние объекта, не является надлежащим заархивировать ограничение. Вместо этого Вы архивируете состояние, дающее начало ограничению. Значение по умолчанию для этого свойства
NO
false
.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-
Отношение между первым атрибутом и измененным вторым атрибутом в ограничении.
Объявление
Swift
enum NSLayoutRelation : Int { case LessThanOrEqual case Equal case GreaterThanOrEqual }
Objective C
enum { NSLayoutRelationLessThanOrEqual = -1, NSLayoutRelationEqual = 0, NSLayoutRelationGreaterThanOrEqual = 1, }; typedef NSInteger NSLayoutRelation;
Константы
-
LessThanOrEqual
NSLayoutRelationLessThanOrEqual
Ограничение требует, чтобы первый атрибут был меньше чем или равен измененному второму атрибуту.
Доступный в iOS 6.0 и позже.
-
Equal
NSLayoutRelationEqual
Ограничение требует, чтобы первый атрибут был точно равен измененному второму атрибуту.
Доступный в iOS 6.0 и позже.
-
GreaterThanOrEqual
NSLayoutRelationGreaterThanOrEqual
Ограничение требует, чтобы первый атрибут был больше, чем или равным измененному второму атрибуту.
Доступный в iOS 6.0 и позже.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-
-
Часть визуального представления объекта, которое должно использоваться для получения значения для ограничения.
Объявление
Swift
enum NSLayoutAttribute : Int { case Left case Right case Top case Bottom case Leading case Trailing case Width case Height case CenterX case CenterY case Baseline case FirstBaseline case LeftMargin case RightMargin case TopMargin case BottomMargin case LeadingMargin case TrailingMargin case CenterXWithinMargins case CenterYWithinMargins case NotAnAttribute }
Objective C
typedef enum: NSInteger { NSLayoutAttributeLeft = 1, NSLayoutAttributeRight, NSLayoutAttributeTop, NSLayoutAttributeBottom, NSLayoutAttributeLeading, NSLayoutAttributeTrailing, NSLayoutAttributeWidth, NSLayoutAttributeHeight, NSLayoutAttributeCenterX, NSLayoutAttributeCenterY, NSLayoutAttributeBaseline, NSLayoutAttributeLastBaseline = NSLayoutAttributeBaseline, NSLayoutAttributeFirstBaseline, NSLayoutAttributeLeftMargin, NSLayoutAttributeRightMargin, NSLayoutAttributeTopMargin, NSLayoutAttributeBottomMargin, NSLayoutAttributeLeadingMargin, NSLayoutAttributeTrailingMargin, NSLayoutAttributeCenterXWithinMargins, NSLayoutAttributeCenterYWithinMargins, NSLayoutAttributeNotAnAttribute = 0 } NSLayoutAttribute;
Константы
-
Left
NSLayoutAttributeLeft
Левая сторона прямоугольника выравнивания объекта.
Доступный в iOS 6.0 и позже.
-
Right
NSLayoutAttributeRight
Правая сторона прямоугольника выравнивания объекта.
Доступный в iOS 6.0 и позже.
-
Top
NSLayoutAttributeTop
Вершина прямоугольника выравнивания объекта.
Доступный в iOS 6.0 и позже.
-
Bottom
NSLayoutAttributeBottom
Нижняя часть прямоугольника выравнивания объекта.
Доступный в iOS 6.0 и позже.
-
Leading
NSLayoutAttributeLeading
Передний фронт прямоугольника выравнивания объекта.
Доступный в iOS 6.0 и позже.
-
Trailing
NSLayoutAttributeTrailing
Задний фронт прямоугольника выравнивания объекта.
Доступный в iOS 6.0 и позже.
-
Width
NSLayoutAttributeWidth
Ширина прямоугольника выравнивания объекта.
Доступный в iOS 6.0 и позже.
-
Height
NSLayoutAttributeHeight
Высота прямоугольника выравнивания объекта.
Доступный в iOS 6.0 и позже.
-
CenterX
NSLayoutAttributeCenterX
Центр вдоль оси X прямоугольника выравнивания объекта.
Доступный в iOS 6.0 и позже.
-
CenterY
NSLayoutAttributeCenterY
Центр вдоль оси y прямоугольника выравнивания объекта.
Доступный в iOS 6.0 и позже.
-
Baseline
NSLayoutAttributeBaseline
Базовая линия объекта.
Доступный в iOS 6.0 и позже.
-
NSLayoutAttributeLastBaseline
Базовая линия объекта. Для объектов больше чем с одной строкой текста это - базовая линия для самой нижней строки текста.
Доступный в iOS 8.0 и позже.
-
FirstBaseline
NSLayoutAttributeFirstBaseline
Базовая линия объекта. Для объектов больше чем с одной строкой текста это - базовая линия для самой верхней строки текста.
Доступный в iOS 8.0 и позже.
-
LeftMargin
NSLayoutAttributeLeftMargin
Левое поле объекта. Для
UIView
объекты, поля определяются ихlayoutMargins
свойство.Доступный в iOS 8.0 и позже.
-
RightMargin
NSLayoutAttributeRightMargin
Правое поле объекта. Для
UIView
объекты, поля определяются ихlayoutMargins
свойство.Доступный в iOS 8.0 и позже.
-
TopMargin
NSLayoutAttributeTopMargin
Верхнее поле объекта. Для
UIView
объекты, поля определяются ихlayoutMargins
свойство.Доступный в iOS 8.0 и позже.
-
BottomMargin
NSLayoutAttributeBottomMargin
Нижнее поле объекта. Для
UIView
объекты, поля определяются ихlayoutMargins
свойство.Доступный в iOS 8.0 и позже.
-
LeadingMargin
NSLayoutAttributeLeadingMargin
Ведущее поле объекта. Для
UIView
объекты, поля определяются ихlayoutMargins
свойство.Доступный в iOS 8.0 и позже.
-
TrailingMargin
NSLayoutAttributeTrailingMargin
Запаздывание объекта поля. Для
UIView
объекты, поля определяются ихlayoutMargins
свойство.Доступный в iOS 8.0 и позже.
-
CenterXWithinMargins
NSLayoutAttributeCenterXWithinMargins
Центр вдоль оси X между левым и правым полем объекта. Для
UIView
объекты, поля определяются ихlayoutMargins
свойство.Доступный в iOS 8.0 и позже.
-
CenterYWithinMargins
NSLayoutAttributeCenterYWithinMargins
Центр вдоль оси y между верхним и нижним полем объекта. Для
UIView
объекты, поля определяются ихlayoutMargins
свойство.Доступный в iOS 8.0 и позже.
-
NotAnAttribute
NSLayoutAttributeNotAnAttribute
Значение заполнителя, использующееся, чтобы указать, что второй элемент ограничения и второй атрибут не используются ни в каких вычислениях. Используйте это значение при создании ограничения, присваивающего константу атрибуту. Например,
item1.height >= 40
. Если ограничение только имеет один элемент, установите второй элемент вnil
, и набор второй атрибут кNSLayoutAttributeNotAnAttribute
.Доступный в iOS 6.0 и позже.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-
-
Немного маски, указывающей и часть интерфейсного элемента для выравнивания и направление для выравнивания между двумя интерфейсными элементами.
Объявление
Swift
struct NSLayoutFormatOptions : RawOptionSetType { init(_
rawValue
: UInt) init(rawValuerawValue
: UInt) static var AlignAllLeft: NSLayoutFormatOptions { get } static var AlignAllRight: NSLayoutFormatOptions { get } static var AlignAllTop: NSLayoutFormatOptions { get } static var AlignAllBottom: NSLayoutFormatOptions { get } static var AlignAllLeading: NSLayoutFormatOptions { get } static var AlignAllTrailing: NSLayoutFormatOptions { get } static var AlignAllCenterX: NSLayoutFormatOptions { get } static var AlignAllCenterY: NSLayoutFormatOptions { get } static var AlignAllBaseline: NSLayoutFormatOptions { get } static var AlignAllLastBaseline: NSLayoutFormatOptions { get } static var AlignAllFirstBaseline: NSLayoutFormatOptions { get } static var AlignmentMask: NSLayoutFormatOptions { get } static var DirectionLeadingToTrailing: NSLayoutFormatOptions { get } static var DirectionLeftToRight: NSLayoutFormatOptions { get } static var DirectionRightToLeft: NSLayoutFormatOptions { get } static var DirectionMask: NSLayoutFormatOptions { get } }Objective C
enum { /* choose only one of these */ NSLayoutFormatAlignAllLeft = NSLayoutAttributeLeft, NSLayoutFormatAlignAllRight = NSLayoutAttributeRight, NSLayoutFormatAlignAllTop = NSLayoutAttributeTop, NSLayoutFormatAlignAllBottom = NSLayoutAttributeBottom, NSLayoutFormatAlignAllLeading = NSLayoutAttributeLeading, NSLayoutFormatAlignAllTrailing = NSLayoutAttributeTrailing, NSLayoutFormatAlignAllCenterX = NSLayoutAttributeCenterX, NSLayoutFormatAlignAllCenterY = NSLayoutAttributeCenterY, NSLayoutFormatAlignAllBaseline = NSLayoutAttributeBaseline, NSLayoutFormatAlignmentMask = 0xFF, /* choose only one of these three */ NSLayoutFormatDirectionLeadingToTrailing = 0 << 8, // default NSLayoutFormatDirectionLeftToRight = 1 << 8, NSLayoutFormatDirectionRightToLeft = 2 << 8, NSLayoutFormatDirectionMask = 0x3 << 8, }; typedef NSUInteger NSLayoutFormatOptions;
Константы
-
AlignAllLeft
NSLayoutFormatAlignAllLeft
Выровняйте все указанное интерфейсное использование элементов
NSLayoutAttributeLeft
на каждом.Доступный в iOS 6.0 и позже.
-
AlignAllRight
NSLayoutFormatAlignAllRight
Выровняйте все указанное интерфейсное использование элементов
NSLayoutAttributeRight
на каждом.Доступный в iOS 6.0 и позже.
-
AlignAllTop
NSLayoutFormatAlignAllTop
Выровняйте все указанное интерфейсное использование элементов
NSLayoutAttributeTop
на каждом.Доступный в iOS 6.0 и позже.
-
AlignAllBottom
NSLayoutFormatAlignAllBottom
Выровняйте все указанное интерфейсное использование элементов
NSLayoutAttributeBottom
на каждом.Доступный в iOS 6.0 и позже.
-
AlignAllLeading
NSLayoutFormatAlignAllLeading
Выровняйте все указанное интерфейсное использование элементов
NSLayoutAttributeLeading
на каждом.Доступный в iOS 6.0 и позже.
-
AlignAllTrailing
NSLayoutFormatAlignAllTrailing
Выровняйте все указанное интерфейсное использование элементов
NSLayoutAttributeTrailing
на каждом.Доступный в iOS 6.0 и позже.
-
AlignAllCenterX
NSLayoutFormatAlignAllCenterX
Выровняйте все указанное интерфейсное использование элементов
NSLayoutAttributeCenterX
на каждом.Доступный в iOS 6.0 и позже.
-
AlignAllCenterY
NSLayoutFormatAlignAllCenterY
Выровняйте все указанное интерфейсное использование элементов
NSLayoutAttributeCenterY
на каждом.Доступный в iOS 6.0 и позже.
-
AlignAllBaseline
NSLayoutFormatAlignAllBaseline
Выровняйте все указанное интерфейсное использование элементов
NSLayoutAttributeBaseline
на каждом.Доступный в iOS 6.0 и позже.
-
AlignmentMask
NSLayoutFormatAlignmentMask
Битовая маска, которая может быть объединена с a
NSLayoutFormatOptions
переменная для получения только части выравнивания параметров формата.Доступный в iOS 6.0 и позже.
-
DirectionLeadingToTrailing
NSLayoutFormatDirectionLeadingToTrailing
Расположение возражает в порядке на основе потока обычного текста для текущего языка пользовательского интерфейса. На слева направо языках (как английский язык), это расположение приводит к первому объекту, помещаемому дальше всего налево, следующий с его правой стороны от него, и т.д. На справа налево языках (как арабский или иврит), инвертируется упорядочивание.
Доступный в iOS 6.0 и позже.
-
DirectionLeftToRight
NSLayoutFormatDirectionLeftToRight
Расположение возражает в порядке слева направо.
Доступный в iOS 6.0 и позже.
-
DirectionRightToLeft
NSLayoutFormatDirectionRightToLeft
Расположение возражает в порядке справа налево.
Доступный в iOS 6.0 и позже.
-
DirectionMask
NSLayoutFormatDirectionMask
Битовая маска, которая может быть объединена с a
NSLayoutFormatOptions
переменная для получения только части направления параметров формата.Доступный в iOS 6.0 и позже.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-
-
Приоритет расположения используется для указания к системе расположения на основе ограничений, которую ограничения более важны, позволяя системе сделать надлежащими компромиссами при удовлетворении ограничений системы в целом.
Объявление
Swift
typealias UILayoutPriority = Float
Objective C
enum { UILayoutPriorityRequired = 1000, UILayoutPriorityDefaultHigh = 750, UILayoutPriorityDefaultLow = 250, UILayoutPriorityFittingSizeLevel = 50, }; typedef float UILayoutPriority;
Константы
-
UILayoutPriorityRequired
Необходимое ограничение. Не указывайте ограничение макета, превышающее это число.
Доступный в iOS 6.0 через iOS 7.1.
-
UILayoutPriorityDefaultHigh
Это - приоритетный уровень, с которым кнопка сопротивляется сжатию ее содержания.
Доступный в iOS 6.0 через iOS 7.1.
-
UILayoutPriorityDefaultLow
Это - приоритетный уровень, на котором кнопка обнимает свое содержание горизонтально.
Доступный в iOS 6.0 через iOS 7.1.
-
UILayoutPriorityFittingSizeLevel
Когда Вы отправляете a
systemLayoutSizeFittingSize:
обменивайтесь сообщениями к представлению, размер, плотно прилегающий больше всего к целевому размеру, вычислен. Это - приоритетный уровень, с которым представление хочет соответствовать целевому размеру в том вычислении. Это довольно низко. Является обычно не надлежащим сделать ограничение в точно этом приоритете. Вы хотите быть выше или ниже.Доступный в iOS 6.0 через iOS 7.1.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-