UIContentContainer
Наследование
Не применимый
Оператор импорта
Swift
import UIKit
Objective C
@import UIKit;
Доступность
Доступный в iOS 8.0 и позже.
Методы UIContentContainer
справка протокола Вы адаптируете содержимое своих контроллеров представления к изменениям черты и размеру. Все UIViewController
и UIPresentationController
объекты обеспечивают реализации по умолчанию для методов этого протокола. При создании собственного контроллера представления или контроллера представления, можно переопределить реализации по умолчанию для внесения изменений в содержание. Например, Вы могли бы использовать эти методы для корректировки размера или позиции любых дочерних контроллеров представления.
При переопределении методов этого протокола необходимо обычно вызывать super
дать UIKit шанс выполнить любые способы поведения по умолчанию. Когда эти методы вызывают, контроллеры представления и контроллеры представления выполняют свои собственные корректировки. Вызов super
гарантирует, что UIKit в состоянии продолжать вносить изменения, он должен адаптировать Ваш интерфейс к изменениям.
-
viewWillTransitionToSize (_: withTransitionCoordinator:) - viewWillTransitionToSize:withTransitionCoordinator:
ТребуемыйУведомляет контейнер, что размер его представления собирается измениться. (требуемый)
Объявление
Swift
func viewWillTransitionToSize(_
size
: CGSize, withTransitionCoordinatorcoordinator
: UIViewControllerTransitionCoordinator)Objective C
- (void)viewWillTransitionToSize:(CGSize)
size
withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator
Параметры
size
Новый размер для представления контейнера.
coordinator
Координатор перехода объектное управление изменения размера. Можно использовать этот объект анимировать изменения или получить информацию о происходящем переходе.
Обсуждение
UIKit вызывает этот метод прежде, чем изменить размер представленного представления контроллера представления. Можно переопределить этот метод в собственных объектах и использовать его для выполнения дополнительных задач, связанных с изменением размера. Например, контейнерный контроллер представления мог бы использовать этот метод для переопределения черт его встроенных дочерних контроллеров представления. Используйте предоставленное
coordinator
возразите для анимации любых изменений, которые Вы вносите.При переопределении этого метода в пользовательских контроллерах представления всегда вызывайте
super
в некоторый момент в Вашей реализации так, чтобы UIKit мог передать сообщение изменения размера соответственно. Контроллеры представления передают сообщение изменения размера к своим представлениям и дочерним контроллерам представления. Контроллеры представления передают изменение размера к своему представленному контроллеру представления.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
willTransitionToTraitCollection (_: withTransitionCoordinator:) - willTransitionToTraitCollection:withTransitionCoordinator:
ТребуемыйУведомляет контейнер, что изменился его набор черты. (требуемый)
Объявление
Swift
func willTransitionToTraitCollection(_
newCollection
: UITraitCollection, withTransitionCoordinatorcoordinator
: UIViewControllerTransitionCoordinator)Objective C
- (void)willTransitionToTraitCollection:(UITraitCollection *)
newCollection
withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator
Параметры
newCollection
Черты, которые будут применены к контейнеру.
coordinator
Координатор перехода объектное управление изменения черты. Можно использовать этот объект анимировать любые изменения или получить информацию о происходящем переходе.
Обсуждение
UIKit вызывает этот метод прежде, чем изменить черты текущего объекта и прежде, чем вызвать
traitCollectionDidChange:
метод любых затронутых представлений и контроллеров представления. Конструкторы этого метода могут использовать его для адаптации интерфейса на основе значений вnewCollection
параметр. Когда текущий класс размера изменяется, общее использование этого метода должно внести изменения в высокоуровневый стиль презентации. Например, контейнерный контроллер представления, управляющий многократными дочерними контроллерами представления, мог бы изменить число дочерних контроллеров представления, которые это выводит на экран на экране, когда изменяется класс размера. Стандартный контроллер представления мог бы использовать этот метод для изменения ограничений на представления, которыми это управляет. Используйте предоставленноеcoordinator
возразите для анимации любых изменений, которые Вы вносите.При переопределении этого метода в собственных объектах всегда вызывайте
super
в некоторый момент в Вашей реализации так, чтобы UIKit мог передать изменения черты к связанному контроллеру представления и к любым дочерним контроллерам представления. Контроллеры представления передают сообщение изменения черты к своим дочерним контроллерам представления. Контроллеры представления передают изменение черты к своему представленному контроллеру представления.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
См. также
-
sizeForChildContentContainer (_: withParentContainerSize:) - sizeForChildContentContainer:withParentContainerSize:
ТребуемыйВозвращает размер указанного дочернего содержания контроллера представления. (требуемый)
Объявление
Swift
func sizeForChildContentContainer(_
container
: UIContentContainer, withParentContainerSizeparentSize
: CGSize) -> CGSizeПараметры
container
Дочерний контроллер представления.
parentSize
Размер родительского контроллера представления.
Возвращаемое значение
Размер для применения к дочернему контроллеру представления.
Обсуждение
Контейнерные контроллеры представления используют этот метод для возврата размеров для их дочерних контроллеров представления. UIKit вызывает метод как часть реализации по умолчанию
viewWillTransitionToSize:withTransitionCoordinator:
метод для контроллеров представления. Это вызывает метод один раз для каждого дочернего контроллера представления, встроенного в контроллер представления. При реализации пользовательского контейнерного контроллера представления необходимо переопределить этот метод и использовать его для возврата размеров содержавших дочерних элементов.Контроллеры представления и контроллеры представления возвращают значение в
parentSize
по умолчанию.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
preferredContentSizeDidChangeForChildContentContainer (_:) - preferredContentSizeDidChangeForChildContentContainer:
Уведомляет заинтересованный контроллер, что изменился предпочтительный размер содержания одного из его дочерних элементов.
Объявление
Swift
func preferredContentSizeDidChangeForChildContentContainer(_
container
: UIContentContainer)Objective C
- (void)preferredContentSizeDidChangeForChildContentContainer:(id<UIContentContainer>)
container
Параметры
container
Дочерний контроллер представления, кто предпочел размер содержания, изменился.
Обсуждение
UIKit вызывает этот метод на контейнерном контроллере представления когда
preferredContentSize
свойство одного из его дочерних изменений контроллеров представления. Точно так же, если контроллером представления управляет контроллер представления, UIKit вызывает этот метод на контроллере представления для уведомления его изменения. Родительский контроллер представления или контроллер представления могут использовать этот метод для инициирования настроек макета на основе новой информации о размере.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
systemLayoutFittingSizeDidChangeForChildContentContainer (_:) - systemLayoutFittingSizeDidChangeForChildContentContainer:
Уведомляет контейнер, что дочерний контроллер представления был изменен с помощью автоматического расположения.
Объявление
Swift
func systemLayoutFittingSizeDidChangeForChildContentContainer(_
container
: UIContentContainer)Objective C
- (void)systemLayoutFittingSizeDidChangeForChildContentContainer:(id<UIContentContainer>)
container
Параметры
container
Дочерний контроллер представления, получивший сообщение изменения размеров.
Обсуждение
Этот метод вызывают, когда контроллер представления, не использующий автоматическое расположение, имеет дочерний контроллер представления, использующий автоматическое расположение, и дочерний контроллер представления изменен. Когда дочерний контроллер представления отвечает на
systemLayoutSizeFittingSize:
метод,systemLayoutFittingSizeDidChangeForChildContentContainer:
метод отправляется в родительский контроллер представления.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
preferredContentSize
СвойствоПредпочтительный размер для содержания контейнера. (требуемый) (только для чтения)
Объявление
Swift
var preferredContentSize: CGSize { get }
Objective C
@property(nonatomic, readonly) CGSize preferredContentSize
Обсуждение
UIViewController
класс реализует перезаписываемую версию этого свойства.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.