2 developerwab developerWab 于 2013.07.22 11:34 提问

UIScrollView批量图片

在视图中有一个UIScrollView,要显示的图片位于一个数组内,我想要在UIScrollView中显示图片,谢谢。

NSMutableArray *images = [[NSMutableArray alloc ] init];

for (int i = 0; i < 10; i++)
{
    NSString *getImagePath = [documentsDirectory stringByAppendingPathComponent:[NSString     stringWithFormat:@"%d/%d.png",b, i]];
    UIImage *img = [UIImage imageWithContentsOfFile:getImagePath];
    [images addObject:img];
    NSLog(@"%@",getImagePath);
    imge.image=img;
}

2个回答

Chengzi_963
Chengzi_963   2013.07.22 13:25
已采纳

设置UIScrollViewcontentSize,然后添加UIImageViewScrollView

[self.myScView addSubView:self.imageView];

添加图片到单独的UIImageView

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.

    self.scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
    self.scrollView.contentSize = CGSizeMake(320, 465);
    self.scrollView.delegate = self;
    [self.view addSubview:self.scrollView];

    int Y = 0;

   // here give you image name is proper so we can access it by for loop.
    for (int i = 1; i <=  totalNumberOFImage; i++)
    {
      UIImageView *imageView = [[UIImageView alloc] initWithFrame: CGRectMake(0, Y, 100, 100)] ;
      [imageView setImage: [UIImage imageNamed:[NSString stringWithFormat:@"youImageName%d", i]]];
      [self.scrollView addSubview: imageView];
      Y = Y + imageView.frame.size.height+5;

     if(y > 465)
      self.scrollView.contentSize = CGSizeMake(320, y);
    }
}
zhanglei5415
zhanglei5415   Rxr 2013.07.22 13:40
- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.

    self.scrollView = [[UIScrollView alloc] initWithFrame:self.view.frame];
    self.scrollView.pageEnable=YES; ////page enable
    self.scrollView.delegate = self;
    [self.view addSubview:self.scrollView];


    self.scrollView.contentSize=CGSizeMake(self.scrollView.frame.size.width*images.count, self.scrollView.frame.size.height);
   // here give you image name is proper so we can access it by for loop.
    for (int i = 0; i <  images.count; i++)
    {
       UIImage *img=[images objectAtIndex:i];
       UIImageView *imageView = [[UIImageView alloc] initWithImage:img] ;
       imageView.frame=CGRectMake(i*self.scrollView.frame.size.width,0, imageView.frame.size.width, imageView.frame.size.height);
      [self.scrollView addSubview: imageView];
    }
}
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!