美文网首页
iOS 造轮子之循环滚动的bannerView(OC)

iOS 造轮子之循环滚动的bannerView(OC)

作者: LazyLoad | 来源:发表于2017-08-25 14:21 被阅读0次
    BHBannerView.gif

    今天 这个轮子是 可以循环滚动的 banner 支持只文字 循环 或者图片banner的循环!!

    网上也有很多这方面大神的 第三方库 我也是和别人学习 希望有一个自己的循环库

    废话不多说,看看我的能给大家带来什么。。。

    先说这个库如何使用(导入头文件那些话不说了)

    图片轮播:
    实例化对象,遵守协议,实现协议中的两个方法
    BHBannerCircleViewCustom *bannerView = [[BHBannerCircleViewCustom alloc] initWithDelegate:self];
        
        bannerView.frame = CGRectMake(0, 20, self.view.bounds.size.width, 200);
        [self.view addSubview:bannerView];
        bannerView.scrollDirection = UICollectionViewScrollDirectionVertical;
        bannerView.scrollDuration = 1.5;
    
    
    /**
     必须实现的代理方法,返回总页数
    
     @param bannerCircleView bannerCircleView
     @return 返回总的页数
     */
    - (NSInteger)numberOfPagesForBannerCircleView:(BHBannerCircleView *)bannerCircleView;
    
    
    /**
     设置cell数据源
    
     @param bannerCircleView bannerCircleView
     @param cell cell的类型由注册时候决定,需要转换为相应的类型来使用
     @param index index
     */
    - (void)bannerCircleView:(BHBannerCircleView *)bannerCircleView setupPageCell:(UICollectionViewCell *)cell withIndex:(NSInteger)index;
    

    还有一种需求是只有文字的循环:比如展示中奖信息
    用法与上一种类似

     BHTextOnlyCircleView *textOnlyView = [[BHTextOnlyCircleView alloc] initWithDelegate:self];
        textOnlyView.backgroundColor = [UIColor orangeColor];
        textOnlyView.frame = CGRectMake(0, 250, self.view.bounds.size.width, 30);
        [self.view addSubview:textOnlyView];
        _textOnlyView = textOnlyView;
    
    

    网上类似的确实很多,我觉得这个库提供一个很好的思路,就是更灵活。
    如果我们有别的需求,不是单纯的文字,或者单纯的图片轮播,我们也可以自己写一个,方法如下:

    自定义View,继承自BHBannerCircleView,实现子类里的两个方法,具体方法可以参考我的。
    
    // 子类实现
    - (void)registerCellForCollectionView:(UICollectionView *)collectionView
    {
        
    }
    
    // 子类实现
    - (UICollectionViewCell *)dequeueReuseableCellForCollectionView:(UICollectionView *)collectionView withIndexPath:(NSIndexPath *)indexPath
    {
        return nil;
    }
    
    这样你就可以循环任何你想循环的东西了!!
    
    

    你想看里面的具体代码,先给个star吧
    GitHub地址:https://github.com/BaiHan1989/BHBannerView.git

    相关文章

      网友评论

          本文标题:iOS 造轮子之循环滚动的bannerView(OC)

          本文链接:https://www.haomeiwen.com/subject/oecudxtx.html