效果圖:

效果圖
效果圖中頁面結(jié)構(gòu):

功能支持:
1、多種類型cell共存(如上,支持多種類型cell的布局,更靈活)
2、支持MJRefresh的整體下拉刷新
優(yōu)勢: 結(jié)構(gòu)簡單,容易接入使用
使用:
1、通過pods導(dǎo)入
pod `CZCPageController`
pod install
2、新建控制器UIViewController,繼承CZCPageController
在新建的控制器中實(shí)現(xiàn)CZCPageControllerDelegate中的方法
//CZCPageControllerDelegate
/*
* 返回要設(shè)置的子控制器數(shù)組
*/
- (NSArray<UIViewController<CZCScrollControllerDelegate> *> *)pageControllerWithSubControllers;
/*
* segmentBar所在的區(qū) 從0開始
*/
- (NSUInteger)pageControllerWithSegmentBarFloatSection;
/*
* segmentBar高度
*/
- (CGFloat)pageControllerWithSegmentBarHeight;
/*
* segmentBar樣式設(shè)置,(字體、顏色等)
*/
- (void)pageControllerWithConfigSegmenrBarAppearance;
3、步驟2中的代理返回的子控制器遵循CZCScrollControllerDelegate
遵循代理
如:
//返回子控制器滑動(dòng)距離
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
if (self.contentOffsetY) {
self.contentOffsetY(scrollView.contentOffset.y);
}
}
//子控制器的容器
#pragma mark CZCScrollControllerDelegate
- (UIScrollView *)controllerMainScrollView{
return self.collectionView;
}
注意:
子控制器的CollectionView或tableView的bounces需要設(shè)置為NO
4、最后
注意:
1、考慮到segmentBar中title、子控制器數(shù)量等數(shù)據(jù)有服務(wù)端返回才能確定,因此,服務(wù)端返回?cái)?shù)據(jù)之后,需要執(zhí)行[self updateData](父類方法)
2、結(jié)構(gòu)圖中的UITableViewCell或者UICollectionViewCell又要嵌套UICollectionView、UIScrollView的話,要使用這兩種類型:CZCCustomCollectionView、CZCCuscomScrollView, (如demo中的GGJShopCouponCell)