1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- //
- // HDMultipleScrollListSubVC.m
- // HDCollectionView_Example
- //
- // Created by HaoDong chen on 2019/5/21.
- // Copyright © 2019 donggelaile. All rights reserved.
- //
- #import "HDMultipleScrollListSubVC.h"
- #import "HDMultipleScrollListMainVC.h"
- @interface HDMultipleScrollListSubVC ()<HDMultipleScrollListViewScrollViewDidScroll>
- {
- void (^scrollCallBack)(UIScrollView*);
- }
- @end
- @implementation HDMultipleScrollListSubVC
- @synthesize collectionV = _collectionV;
- - (void)viewDidLoad {
- [super viewDidLoad];
- [self setUp];
- }
- - (void)setUp
- {
- self.automaticallyAdjustsScrollViewInsets = NO;
- _collectionV = [HDCollectionView hd_makeHDCollectionView:^(HDCollectionViewMaker *maker) {
- maker.hd_isNeedTopStop(YES);
- }];
- [self.collectionV hd_setShouldRecognizeSimultaneouslyWithGestureRecognizer:^BOOL(UIGestureRecognizer *selfGestture, UIGestureRecognizer *otherGesture) {
- if ([otherGesture.view isKindOfClass:[UICollectionView class]]) {
- UICollectionView *cv = (UICollectionView*)otherGesture.view;
- if (cv.contentSize.width > cv.frame.size.width) {
- return NO;//不同时响应横向滑动的手势
- }
- }
- return YES;//响应最底层的mainSc
- }];
-
- __hd_WeakSelf
- [self.collectionV hd_setScrollViewDidScrollCallback:^(UIScrollView *scrollView) {
- [weakSelf scDicScroll:scrollView];
- }];
-
- CGFloat safeBottom = 0;
- if (@available(iOS 11.0, *)) {
- safeBottom = [[UIApplication sharedApplication].delegate window].safeAreaInsets.bottom;
- } else {
- // Fallback on earlier versions
- }
- self.collectionV.collectionV.contentInset = UIEdgeInsetsMake(0, 0, safeBottom, 0);
- [self.view addSubview:self.collectionV];
- }
- - (void)viewDidLayoutSubviews
- {
- [super viewDidLayoutSubviews];
- self.collectionV.frame = self.view.bounds;
- }
- - (void)scDicScroll:(UIScrollView*)sc
- {
- if (scrollCallBack) {
- scrollCallBack(sc);
- }
- }
- - (void)HDMultipleScrollListViewScrollViewDidScroll:(nonnull void (^)(UIScrollView * _Nonnull))ScrollCallback {
- scrollCallBack = ScrollCallback;
- }
- @end
|