UICollectionViewLayoutInvalidationContext
Наследование
-
NSObject
-
UICollectionViewLayoutInvalidationContext
-
UICollectionViewFlowLayoutInvalidationContext
-
NSObject
-
UICollectionViewLayoutInvalidationContext
-
UICollectionViewFlowLayoutInvalidationContext
Оператор импорта
Swift
import UIKit
Objective C
@import UIKit;
Доступность
Доступный в iOS 7.0 и позже.
A UICollectionViewLayoutInvalidationContext
объект объявляет, какие части Вашего расположения должны быть обновлены, когда расположение лишено законной силы. Объекты расположения, разработанные для поддержки контекстов аннулирования, могут использовать ту информацию для оптимизации их поведения во время цикла аннулирования.
Можно создать объект контекста аннулирования как предшественник лишения законной силы объекта расположения. После конфигурирования объекта контекста аннулирования передайте его объекту расположения invalidateLayoutWithContext:
метод, который ответственен за использование объекта контекста для обновления расположения эффективно. Представление набора также создает контексты аннулирования в ответ на определенные изменения. Например, это создает контекст аннулирования при изменении расположения или объекта источника данных когда Вы вставляете или удаляете элементы, и когда Вы вызываете reloadData
метод.
Разделение на подклассы примечаний
При создании собственных объектов расположения можно разделить на подклассы UICollectionViewLayoutInvalidationContext
и добавьте свойства для указания, какие аспекты данных расположения могут быть лишены законной силы отдельно. Необходимо тогда разработать объект расположения проверить на эти свойства и обновить расположение соответственно.
Для получения дополнительной информации о том, как поддерживать пользовательские контексты аннулирования в Ваших объектах расположения, посмотрите Ссылку класса UICollectionViewLayout.
-
invalidateEverything
СвойствоБулевская переменная, указывающая, что все данные расположения должны быть отмечены как недопустимые. (только для чтения)
Объявление
Swift
var invalidateEverything: Bool { get }
Objective C
@property(nonatomic, readonly) BOOL invalidateEverything
Обсуждение
Вы не устанавливаете это свойство сами. Представление набора устанавливает его в ответ на определенные типы сценариев аннулирования расположения. Например, представление набора устанавливает его в
YES
true
когда Вы изменяете объект текущего макета, изменяете источник данных представления набора или вызываетеreloadData
метод и впоследствии запрашивает контекст аннулирования расположения.Если это свойство установлено в
YES
true
, объект расположения должен повторно вычислить все свои связанные с расположением данные.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
invalidateDataSourceCounts
СвойствоБулевская переменная, указывающая, должно ли расположение попросить новый раздел и количества элемента. (только для чтения)
Объявление
Swift
var invalidateDataSourceCounts: Bool { get }
Objective C
@property(nonatomic, readonly) BOOL invalidateDataSourceCounts
Обсуждение
Вы не устанавливаете это свойство сами. Представление набора устанавливает его в ответ на определенные типы сценариев аннулирования расположения. Например, представление набора устанавливает его в
YES
true
когда Вы вставляете или удаляете элементы или вызываете представление набораreloadData
метод.Если это свойство установлено в
YES
true
, объект расположения должен запросить своего делегата к числу разделов и элементов и обновить его расположение на основе нового числа элементов.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
contentOffsetAdjustment
СвойствоЗначение дельты, которое будет применено к смещению содержания представления набора.
Объявление
Swift
var contentOffsetAdjustment: CGPoint
Objective C
@property(nonatomic) CGPoint contentOffsetAdjustment
Обсуждение
Используйте это свойство для обновления смещения содержания представления набора. Значение по умолчанию этого свойства
CGPointZero
. Изменение значения заставляет представление набора добавлять, что указанный x и y оцениваетcontentOffset
свойство. Таким образом положительные значения увеличивают смещение содержания, и отрицательные величины уменьшают его.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
contentSizeAdjustment
СвойствоЗначение дельты, которое будет применено к размеру содержания представления набора.
Объявление
Swift
var contentSizeAdjustment: CGSize
Objective C
@property(nonatomic) CGSize contentSizeAdjustment
Обсуждение
Используйте это свойство для обновления размера предметной области представления набора. Значение по умолчанию этого свойства
CGSizeZero
. Изменение значения заставляет представление набора добавлять заданную высоту, и ширина оцениваетcontentSize
свойство. Таким образом положительные значения увеличивают предметную область, и отрицательные величины уменьшают ее.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
Добавляют ячейки в указанных индексных путях к списку недопустимых элементов.
Объявление
Swift
func invalidateItemsAtIndexPaths(_
indexPaths
: [AnyObject])Objective C
- (void)invalidateItemsAtIndexPaths:(NSArray *)
indexPaths
Параметры
indexPaths
Массив
NSIndexPath
объекты. Каждый индексный путь представляет ячейку, расположение которой должно быть повторно вычислено.Обсуждение
Вызовите этот метод для идентификации определенных ячеек расположения, требующих обновлений. Ячейки, которые Вы указываете, добавляются к массиву в
invalidatedItemIndexPaths
свойство.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
invalidateSupplementaryElementsOfKind (_: atIndexPaths:) - invalidateSupplementaryElementsOfKind:atIndexPaths:
Добавляют дополнительные представления в указанных индексных путях к списку недопустимых элементов.
Объявление
Swift
func invalidateSupplementaryElementsOfKind(_
elementKind
: String, atIndexPathsindexPaths
: [AnyObject])Параметры
elementKind
Строка, идентифицирующая тип дополнительных представлений. Этот параметр не должен быть
nil
.indexPaths
Массив
NSIndexPath
объекты. Каждый индексный путь представляет дополнительное представление данного вида, расположение которого должно быть повторно вычислено.Обсуждение
Вызовите этот метод для идентификации определенных дополнительных представлений расположения, требующих обновлений. Представления, которые Вы указываете, добавляются к словарю в
invalidatedSupplementaryIndexPaths
свойство. Все представления, которые Вы указываете, должны иметь тип, который Вы указали вelementKind
параметр. Если Вы вызываете этот метод два или больше раза с тем же значением дляelementKind
параметр, этот метод объединяет новые индексные пути с теми ранее указанными.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
invalidateDecorationElementsOfKind (_: atIndexPaths:) - invalidateDecorationElementsOfKind:atIndexPaths:
Добавляют представления художественного оформления в указанных индексных путях к списку недопустимых элементов.
Объявление
Swift
func invalidateDecorationElementsOfKind(_
elementKind
: String, atIndexPathsindexPaths
: [AnyObject])Параметры
elementKind
Строка, идентифицирующая тип представлений художественного оформления. Этот параметр не должен быть
nil
.indexPaths
Массив
NSIndexPath
объекты. Каждый индексный путь представляет дополнительное представление данного вида, расположение которого должно быть повторно вычислено.Обсуждение
Вызовите этот метод для идентификации определенных представлений художественного оформления, атрибуты макета которых изменились. Представления, которые Вы указываете, добавляются к словарю в
invalidatedDecorationIndexPaths
свойство. Все представления, которые Вы указываете, должны иметь тип, который Вы указали вelementKind
параметр. Если Вы вызываете этот метод два или больше раза с тем же значением дляelementKind
параметр, этот метод объединяет новые индексные пути с теми ранее указанными.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
invalidatedItemIndexPaths
СвойствоМассив индексных путей, представляющих лишенные законной силы ячейки. (только для чтения)
Объявление
Swift
var invalidatedItemIndexPaths: [AnyObject]? { get }
Objective C
@property(nonatomic, readonly) NSArray *invalidatedItemIndexPaths
Обсуждение
Массив содержит нуль или больше
NSIndexPath
объекты, каждый из которых представляет ячейку, расположение которой изменилось.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
invalidatedSupplementaryIndexPaths
СвойствоСловарь, идентифицирующий лишенные законной силы дополнительные представления. (только для чтения)
Объявление
Swift
var invalidatedSupplementaryIndexPaths: [NSObject : AnyObject]? { get }
Objective C
@property(nonatomic, readonly) NSDictionary *invalidatedSupplementaryIndexPaths
Обсуждение
Ключи в этом словаре являются строками вида элемента недопустимых дополнительных представлений. Значение для каждого ключа является массивом
NSIndexPath
объекты, указывающие, какие определенные дополнительные представления имеют изменения макета.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
invalidatedDecorationIndexPaths
СвойствоСловарь, идентифицирующий лишенные законной силы представления художественного оформления. (только для чтения)
Объявление
Swift
var invalidatedDecorationIndexPaths: [NSObject : AnyObject]! { get }
Objective C
@property(nonatomic, readonly) NSDictionary *invalidatedDecorationIndexPaths
Обсуждение
Ключи в этом словаре являются строками вида элемента недопустимых представлений художественного оформления. Значение для каждого ключа является массивом
NSIndexPath
объекты, указывающие, какие определенные представления художественного оформления имеют изменения макета.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.