UICollectionView的轻量级扩展控件
查看Example/DJLSplitCollectionView.xcodeproj
UICollectionViewFlowLayout *mainFlowLayout = [UICollectionViewFlowLayout new];
mainFlowLayout.scrollDirection = UICollectionViewScrollDirectionVertical;
self.mainCollectionView = [[DJLSplitCollectionView alloc] initWithFrame:self.view.bounds collectionViewLayout:mainFlowLayout];
[self.mainCollectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:@"cellIdentifier"];
self.mainCollectionView.backgroundColor = [UIColor whiteColor];
[self.view addSubview:self.mainCollectionView];
UICollectionViewFlowLayout *childFlowLayout = [UICollectionViewFlowLayout new];
childFlowLayout.scrollDirection = UICollectionViewScrollDirectionHorizontal;
self.childCollectionView = [[UICollectionView alloc] initWithFrame:CGRectZero collectionViewLayout:childFlowLayout];
[self.childCollectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:@"cellIdentifier"];
self.childCollectionView.backgroundColor = [UIColor colorWithRed:0.9 green:0.9 blue:0.9 alpha:1];
self.childCollectionView.frame = CGRectMake(0, 0, self.mainCollectionView.frame.size.width, 80);
didSelectItemAtIndexPath:
方法// open split view
[self.mainCollectionView djl_openFolderAtIndexPath:indexPath
withContentView:self.childCollectionView
openBlock:^(UIView *subClassView, CFTimeInterval duration, CAMediaTimingFunction *timingFunction) {
self.mainCollectionView.scrollEnabled = NO;
NSLog(@"open childCollectionView");
} closeBlock:^(UIView *subClassView, CFTimeInterval duration, CAMediaTimingFunction *timingFunction) {
self.mainCollectionView.scrollEnabled = YES;
NSLog(@"close childCollectionView");
} completionBlock:^{
self.mainCollectionView.scrollEnabled = YES;
NSLog(@"completion childCollectionView");
}];
// close split view
// [self.mainCollectionView djl_closeSplitView];
DJLSplitCollectionView在MIT许可下提供。有关详细信息,请参阅LICENSE文件。