3.无限轮播

简述:无限轮播是大家在项目里面都会遇到的一件事,一般是用UIScrollView或者UICollectionView来做的,下面介绍几种用法

1.网络加载的图片连接来实现无限轮播

<1> UICollectionView做的服务器请数据回来来展示数据的轮播


网络的连接的无限轮播
放到代码里

加载网络图片连接的代码 密码: nnr3

<2> DCPicscrollView封无限轮播,作为uitabviewcell的第一段(常用)

DCPicscrollView封无限轮播
  • 加载用网络图片(调用下面的两个方法) 数组是网络请求的数组连接和本地图片的连接

     static NSString *cellID = @"cellID";
         UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID];
         if (!cell) {
             
             cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellID];
         }
         
         if(array.count > 0){
             
             [self demo1:array view:cell];
         }else{
             
             [self demo2:dataArray view:cell];
             
         }
    
         return cell;
    
    • (void)demo1:(NSArray *)netArr view:(UIView *)view{
      //显示顺序和数组顺序一致
      //设置图片url数组,和滚动视图位置
      DCPicScrollView *picView = [DCPicScrollView picScrollViewWithFrame:CGRectMake(0, 0, WIDTH, 250) WithImageUrls:netArr];

    //图片被点击事件,当前第几张图片被点击了,和数组顺序一致

    [picView setImageViewDidTapAtIndex:^(NSInteger index) {

     printf("第%zd张图片\n",index);
     
     /*
     
     LunBomodel *modell = lunBodataArray[index];
     
     WebViewController *webViewController = [[WebViewController alloc]init];
     
     webViewController.lianjie = modell.ad_url;
     
     [self.navigationController pushViewController:webViewController animated:YES];
     */
    

    }];

      //default is 2.0f,如果小于0.5不自动播放
        picView.AutoScrollDelay = 3.0f;//滑动速度
     // picView.textColor = [UIColor redColor];
    
     [view addSubview:picView];
    
    //下载失败重复下载次数,默认不重复,
    [[DCWebImageManager shareManager] setDownloadImageRepeatCount:1];
    
    //图片下载失败会调用该block(如果设置了重复下载次数,则会在重复下载完后,假如还没下载成功,就会调用该block)
    //error错误信息
    //url下载失败的imageurl
    [[DCWebImageManager shareManager] setDownLoadImageError:^(NSError *error, NSString *url) {
     
     NSLog(@"%@",error);
    

    }];
    }
    //本地加载只要放图片名数组就行了****************************
    -(void)demo2:(NSArray *)arr view:(UIView *)view {
    DCPicScrollView *picView1 = [DCPicScrollView picScrollViewWithFrame:CGRectMake(0,0,WIDTH, 250) WithImageUrls:arr];
    picView1.backgroundColor = [UIColor clearColor];
    [picView1 setImageViewDidTapAtIndex:^(NSInteger index) {

    //这里是显示点击的第几张图片         
    

    }];

     picView1.AutoScrollDelay = 3.0f;
    
     [view addSubview:picView1];
    

    }

    DCPicscrollView封无限轮播 密码: ak2e

    <3>真实的无限轮播以及下面的布局思路

真实的无限轮播以及下面的布局思路

真实的无限轮播以及下面的布局思路 密码: uq43

2.本地的无限轮播

<1>采用自己封装的类来做的GGBannerView(里面用UICollectionView做的)
本地的无限轮播

使用方法:(具体的到里面一看就明白了)

 GGBannerView *bannerView = [[GGBannerView alloc]initWithFrame:CGRectMake(0, 100, 414, 200)]; 
 bannerView.isTimer = YES;
 bannerView.delegate =self;//在这里挂代理是为了方便在有网络时知道点击的shi哪张图片跳进那个连接里面
 [self.view addSubview:bannerView];//把视图放到表头或者其他地方
 bannerView.sourceArray = @[@"1.jpg",@"2.jpg",@"3.jpg",@"4.jpg"];//放图片的名字就好
//当点击图片是知道点击的是哪一张
  - (void)bannerViewCurrentPage:(NSInteger)currentPage
  {
      NSLog(@"%ld",currentPage);
  }

本地无限轮播的源码 密码: 8dh7
可以拉伸的本地无限轮播的源码 密码: k47v

3.其他的无限轮播

循环滚动 密码: qag4
瀑布流轮播 密码: dnb5
轮播支持本地图片和网络图片 密码: 2k84
广告图的无限循环滚动 密码: cq8k
播放本地的gif图 密码: gtjj
3D效果轮播 密码: icka
3D动画轮播图 密码: 5ue3

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,250评论 4 61
  • 嗯哼嗯哼蹦擦擦~~~ 转载自:https://github.com/Tim9Liu9/TimLiu-iOS 目录 ...
    philiha阅读 5,032评论 0 6
  • 收了老子的钱,就得给老子办事!倘若事没办成… 衙门近日在处理一起凶杀案。 钱家的小栓子,在街口与陈家的小桂子发生了...
    神奇小逗阅读 506评论 0 1
  • 你们, 身穿白衣, 一把剪刀, 演绎无数传奇。 昨天的你们, 心中的梦想, 扎根发芽。 今日的你们, 胸中...
    荣耀的骑士阅读 187评论 0 1
  • 闲至城关东门桥,重读桥头所立修桥记事碑,不由得将思绪引回到一九九四年那一个难忘的年份里。那一年,五月用它任性...
    刘志坚阅读 280评论 0 2