IGListKit/Source/IGListCollectionView.h
Maxime Ollivier 74c5fb3566 Update pods and examples
Summary:
Update pod and examples so project builds when synced

Depends on D6545334

Reviewed By: rnystrom

Differential Revision: D6573821

fbshipit-source-id: b0d4246fa9c0d627ebcd34ac7abd5c8453964037
2017-12-15 09:33:39 -08:00

46 lines
1.7 KiB
Objective-C

/**
* Copyright (c) 2016-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
#import <UIKit/UIKit.h>
@class IGListCollectionViewLayout;
NS_ASSUME_NONNULL_BEGIN
/**
This `UICollectionView` subclass allows for partial layout invalidation using `IGListCollectionViewLayout`.
@note When updating a collection view (ex: calling `-insertSections`), `-invalidateLayoutWithContext` gets called on
the layout object. However, the invalidation context doesn't provide details on which index paths are being modified,
which typically forces a full layout re-calculation. `IGListCollectionView` gives `IGListCollectionViewLayout` the
missing information to re-calculate only the modified layout attributes.
*/
NS_SWIFT_NAME(ListCollectionView)
@interface IGListCollectionView : UICollectionView
/**
Create a new view with an `IGListcollectionViewLayout` class or subclass.
@param frame The frame to initialize with.
@param collectionViewLayout The layout to use with the collection view.
@note You can initialize a new view with a base layout by simply calling `-[IGListCollectionView initWithFrame:]`.
*/
- (instancetype)initWithFrame:(CGRect)frame listCollectionViewLayout:(IGListCollectionViewLayout *)collectionViewLayout NS_DESIGNATED_INITIALIZER;
/**
:nodoc:
*/
- (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)collectionViewLayout NS_UNAVAILABLE;
- (instancetype)initWithCoder:(NSCoder *)aDecoder NS_UNAVAILABLE;
@end
NS_ASSUME_NONNULL_END