IGListKit/Tests/Objects/IGTestSingleItemDataSource.m
Bofei Zhu 9685f2ba06 Provide object in IGListSingleSectionController size block
Summary:
Fix #144
Closes https://github.com/Instagram/IGListKit/pull/147

Differential Revision: D4111495

Pulled By: rnystrom

fbshipit-source-id: 34d66e60a7e389da684239b6a6aa992cbcd3d9cd
2016-11-01 10:59:21 -07:00

38 lines
1.4 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 "IGTestSingleItemDataSource.h"
#import <IGListKit/IGListSingleSectionController.h>
#import "IGTestCell.h"
@implementation IGTestSingleItemDataSource
- (NSArray *)objectsForListAdapter:(IGListAdapter *)listAdapter {
return self.objects;
}
- (IGListSectionController <IGListSectionType> *)listAdapter:(IGListAdapter *)listAdapter sectionControllerForObject:(id)object {
void (^configureBlock)(id, __kindof UICollectionViewCell *) = ^(IGTestObject *item, IGTestCell *cell) {
cell.label.text = [item.value description];
};
CGSize (^sizeBlock)(id, id<IGListCollectionContext>) = ^CGSize(IGTestObject *item, id<IGListCollectionContext> collectionContext) {
return CGSizeMake([collectionContext containerSize].width, 44);
};
return [[IGListSingleSectionController alloc] initWithCellClass:IGTestCell.class
configureBlock:configureBlock
sizeBlock:sizeBlock];
}
- (nullable UIView *)emptyViewForListAdapter:(IGListAdapter *)listAdapter {
return nil;
}
@end