1

UIScrollViewとUICollectionViewがあります。CollectionViewには、100x100サイズの25枚の画像があります。アプリケーションを実行すると、シミュレーターで最初の12枚の画像が表示され、次に上にスクロールして次の画像が表示されます。それは私の問題ではありません。縦モードではなく横モードで画像を表示したい。つまり、最初のページで12枚の画像が表示され、次に水平方向にスクロールし、次の画像が垂直方向ではなく表示されます。方法を教えてください。

ありがとう。

#import "Collection.h"
#import "PageViewController.h"

@interface Collection ()

@end

@implementation Collection

@synthesize collView,selectedAlbum,img1;

static NSString *const cellReuseIdentifier = @"CollectionViewCell";

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}

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

    [self.collView registerNib:[UINib nibWithNibName:@"CollectionViewItem" bundle:nil]     forCellWithReuseIdentifier:cellReuseIdentifier];
    self.collView.backgroundColor = [UIColor blackColor];

    UICollectionViewFlowLayout *flowLayout = [[UICollectionViewFlowLayout alloc] init];
    [flowLayout setItemSize:CGSizeMake(100, 100)];
    [flowLayout setMinimumLineSpacing:10];
    [flowLayout setMinimumInteritemSpacing:10];
   // [flowLayout setScrollDirection:UICollectionViewScrollDirectionVertical];
    [collView setCollectionViewLayout:flowLayout];
     collView.delegate = self;

    //Customize scrollView

    scrolView = [[UIScrollView alloc] init];
    scrolView.frame = CGRectMake(0, 0, 320, 400);
    scrolView.delegate = self;
    [self.view addSubview:scrolView];
    scrolView.contentSize = CGSizeMake(0,0,640,450);
    [scrolView addSubView:collView];

    Images = [NSArray arrayWithObjects:@"3(3).jpg",@"baby1.jpg",@"Baby2.jpg",@"Baby3.jpg",@"boat_sea_beach-normal.jpg",@"cool.jpg",@"gold-iphone-5-300912.jpg",@"life-sometimes.jpg",@"Mac Wallpapers.jpeg",@"Quotes.jpg",@"series.jpg",@"wallpaper.jpg",@"wide-9.jpg", nil];
    }

    self.navigationItem.title = selectedAlbum;

}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView
{
    return 1;
}

-(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section
{
    return Images.count;
}

-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
    UICollectionViewCell *cell1 = [collView dequeueReusableCellWithReuseIdentifier:cellReuseIdentifier forIndexPath:indexPath];


    UIImageView *imageImages = (UIImageView *) [cell1 viewWithTag:16];
    imageImages.image = [UIImage imageNamed:[Images objectAtIndex:indexPath.row]];

    return cell1;
}

@end
4

1 に答える 1

0

(コメント付きの)スクロール方向を次のように置き換える必要があります。

[flowLayout setScrollDirection:UICollectionViewScrollDirectionHorizo​​ntal];

于 2013-04-16T13:49:45.257 に答える