我是UICollectionView的新手,我正在按照我在Youtube上找到的教程,但我遇到了一个我无法弄清楚的错误.
当我使用此代码运行应用程序时:
-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView { return 1; } -(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section { return [self.array count]; } -(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath { CollectionCell *aCell = (CollectionCell *)[collectionView dequeueReusableCellWithReuseIdentifier:@"myCell" forIndexPath:indexPath]; aCell.title.text = self.array[indexPath.row]; return aCell; } - (void)viewDidLoad { [super viewDidLoad]; self.array = @[@"First",@"Second",@"Thirth",@"Fourth"]; }
而在.h:
@property (strong,nonatomic) NSArray *array;
在控制台中,我收到以下错误:
Terminating app due to uncaught exception 'NSInvalidArgumentException',reason: 'UICollectionView must be initialized with a non-nil layout parameter'
我没有使用故事板,自定义了CollectionView你可以在这里看到:
有没有人有任何想法,为什么我收到此错误?一切都是受欢迎的!
编辑:
- (void)viewDidLoad { [super viewDidLoad]; self.array = @[@"First",@"Fourth"]; [self.collectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:@"myCell"]; UICollectionViewFlowLayout *flow = [[UICollectionViewFlowLayout alloc] init]; [flow setItemSize:CGSizeMake(60,60)]; [flow setScrollDirection:UICollectionViewScrollDirectionVertical]; [self.collectionView setCollectionViewLayout:flow]; }