0

2つのスクロールビューがあり、すべてのスクロールビューに106の画像をロードする必要があります。以下は使用しているコードですが、iPhone4でテストしようとするとクラッシュします。

すべての画像は約30〜40 KBであるため、サイズは理由ではありません。

何かアイデアがあれば、とてもありがたいです!

- (void)viewDidLoad
{

[super viewDidLoad];

Images = [[NSMutableArray alloc]init];

Slogans = [[NSMutableArray alloc]init];

    for (int i =1; i<=106; i++) {
        int r = i-1;
        [self.Images addObject:[UIImage imageNamed:[NSString stringWithFormat:@"%da.jpg",i]]];
        [self.Slogans addObject:[UIImage imageNamed:[NSString stringWithFormat:@"%d.jpg",i]]];
        NSLog(@"%d.jpg",i );
        NSLog(@"%da.jpg",i );

        NSLog(@"Images count: %d",self.Images.count);
         NSLog(@"Slogans count: %d",self.Slogans.count);

        //Images
        CGRect frame;
        frame.origin.x = self.ImagesScrollView.frame.size.width * i;
        frame.origin.y = 0;
        frame.size = self.ImagesScrollView.frame.size;
        UIImageView *ImagesSubview = [[UIImageView alloc] initWithFrame:frame];

        ImagesSubview.image = [self.Images objectAtIndex:r];
        [self.ImagesScrollView addSubview:ImagesSubview];
        [ImagesSubview release];


        //Slogans
        CGRect Sframe;
        Sframe.origin.x = self.SlogansScrollView.frame.size.width * i;
        Sframe.origin.y = 0;
        Sframe.size = self.SlogansScrollView.frame.size;
        UIImageView *SlogansSubview = [[UIImageView alloc] initWithFrame:Sframe];

        SlogansSubview.image = [self.Slogans objectAtIndex:r];
        [self.SlogansScrollView addSubview:SlogansSubview];
        [SlogansSubview release];
 }

    [SpageControl setNumberOfPages:Images.count];
    [pageControl setNumberOfPages:Images.count];




    self.ImagesScrollView.contentSize = CGSizeMake(self.ImagesScrollView.frame.size.width * Images.count, self.ImagesScrollView.frame.size.height);

     self.SlogansScrollView.contentSize = CGSizeMake(self.SlogansScrollView.frame.size.width * Slogans.count, self.SlogansScrollView.frame.size.height);


}
4

1 に答える 1

0

30〜40 kbのファイルサイズは、これらの画像を保持するために必要な実際のメモリについては何も示していません。

UITableViewを使用し、必要に応じて画像を動的にロードするか、AppleのUIScrollViewの例の1つであるPhotoScrollerScrollViewSutieを使用して、タイリングをデモすることをお勧めします。

于 2012-09-11T19:30:17.310 に答える