ApayandAhaverst 2017-09-29 03:29 采纳率: 0%
浏览 1072

UIScrollView 的嵌套以及加载图片太多的问题

最近我遇到一个问题,在ios开发中做一个类似于手机相册的功能,具体内容如下:
1.有一个200/300百张的图片数组放在沙河中,做一个左右手动的轮播图,每张图都要可以实现缩放问题。
2.差不多已经实现了,就是利用scrollView的嵌套,由于加载是一张张的,导致首次在滚动的过程中会出现空白。
主要代码如下:
//结束减速

  • (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView { if (scrollView == self.sv) { int index = scrollView.contentOffset.x / scrollView.frame.size.width; NSString *filePath = [fileDestination stringByAppendingString:@"/images"]; NSString *imagePath =[NSString stringWithFormat:@"/%@/%@",filePath,self.imageArr[index]]; UIImageView *imv = [self.imageViews objectAtIndex:index]; imv.image = [UIImage imageWithContentsOfFile:imagePath]; } }
  • (UIScrollView *)sv {
    if(_sv == nil) {
    _scrollViews = [[NSMutableArray alloc] init];
    _imageViews = [[NSMutableArray alloc]init];

    _sv = [[UIScrollView alloc] initWithFrame:(CGRectMake(0, 64, KScrollViewWidth,  KScrollViewHeight - 128))];
    _sv.contentSize = CGSizeMake(KScrollViewWidth * self.imageArr.count, KScrollViewHeight - 128);
    _sv.delegate = self;
    CGFloat x = self.index * KScrollViewWidth;
    _sv.contentOffset = CGPointMake(x, 0);
    _sv.pagingEnabled = YES;
    //_sv是横向滚动的股东栏
    [self.view addSubview:_sv];
    for (int i = 0; i < self.imageArr.count; i ++) {
        UIScrollView * scrollView = [[UIScrollView alloc] initWithFrame:(CGRectMake(KScrollViewWidth * i, 0, KScrollViewWidth, KScrollViewHeight - 128))];
        scrollView.minimumZoomScale = 1;
        scrollView.maximumZoomScale = 10;
        [_sv addSubview:scrollView];
        scrollView.delegate = self;
        UIImageView *iv = [[UIImageView alloc] initWithFrame:(CGRectMake(0, 0, KScrollViewWidth, KScrollViewHeight - 128))];
        NSString *filePath = [fileDestination stringByAppendingString:@"/images"];
         [iv setImage:[UIImage imageNamed:@"789.png"]];
        if (self.index == i) {
            NSString *imagePath =[NSString stringWithFormat:@"/%@/%@",filePath,self.imageArr[i]];
            iv.image = [UIImage imageWithContentsOfFile:imagePath];
        }
    
        self.icon = iv;
        iv.contentMode = UIViewContentModeScaleAspectFit;
        [scrollView addSubview:iv];
        iv.tag = 1000;
        [self.imageViews addObject:iv];
        [self.scrollViews addObject:scrollView];
    }
    

    }
    return _sv;
    }
    在这里我添加了一张默认的图片,但是在使用的时候还是很别扭,哪位大神帮帮忙呀?

  • 写回答

1条回答 默认 最新

  • devmiao 2017-09-30 20:30
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘