UICollectionViewController用法

 // 初始化
    UICollectionViewFlowLayout *flowLayout= [[UICollectionViewFlowLayout alloc]init];
    UICollectionView *myCollectionView = [[UICollectionView alloc] initWithFrame:CGRectMake(10, 100, view.width-20, 90) collectionViewLayout:flowLayout];
    myCollectionView.backgroundColor = [UIColor grayColor];
    [myCollectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:@"myCell"];
     myCollectionView.delegate = self;
     myCollectionView.dataSource = self;
    myCollectionView.backgroundColor = [UIColor whiteColor];
     [view addSubview:myCollectionView];

#pragma mark - collectionView delegate

//每个分区上的元素个数
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section
{
    return 10;
}

//设置元素内容
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
     UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"myCell" forIndexPath:indexPath];
  
    UIImageView *emojiView = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 24, 24)];
    emojiView.backgroundColor = [UIColor redColor];
    [cell.contentView addSubview:emojiView];
    
    return cell;
}

//设置元素的的大小框
-(UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout insetForSectionAtIndex:(NSInteger)section
{
     return UIEdgeInsetsMake(10, 10, 10, 10);
}

// 设定指定Cell的尺寸
-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath{

    return CGSizeMake(24.0,24.0);
}

// 设定指定区内Cell的最小行距
- (CGFloat)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout minimumLineSpacingForSectionAtIndex:(NSInteger)section
{
    return 20.0;
}

// 设定指定区内Cell的最小间距
- (CGFloat)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout minimumInteritemSpacingForSectionAtIndex:(NSInteger)section
{
    return 20.0;
}

// item被选择时触发
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
{
    NSLog(@"%ld",indexPath.row);
}

 

posted @ 2015-03-12 09:57  菜鸟程序猿  阅读(368)  评论(0编辑  收藏  举报