UICollectionView 使用

 

 

/**
     初始化UICollectionView
     */
    UICollectionViewFlowLayout *flowLayout=[[UICollectionViewFlowLayout alloc] init];
    [flowLayout setScrollDirection:UICollectionViewScrollDirectionHorizontal];
    flowLayout.minimumLineSpacing = 0;
    flowLayout.minimumInteritemSpacing=0;
    
    _deviceCollectionView = [[UICollectionView alloc]initWithFrame:CGRectMake(0, 0, kScreenWidth, kHeightPro(622)*2) collectionViewLayout:flowLayout];
    
    //设置代理
   _deviceCollectionView.delegate = self;
    _deviceCollectionView.dataSource = self;
    [self.view addSubview:_deviceCollectionView];
    [_deviceCollectionView setBackgroundColor:RGBColor(0xf3, 0xf6, 0xf8)];
    
    
    // Register cell classes
    [_deviceCollectionView registerClass:[AnbotDeviceCollectionViewCell class] forCellWithReuseIdentifier:reuseIdentifier];

 

 

#pragma mark -- <UICollectionViewDataSource>

- (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView {
    return 2;
}
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
    return 2;
}

- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
    
    AnbotDeviceCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:reuseIdentifier  forIndexPath:indexPath];
    [cell sizeToFit];
    if (!cell) {
        NSLog(@"无法创建CollectionViewCell时打印,自定义的cell就不可能进来了。");
    }
    [self configureCell:cell atIndexPath:indexPath];
    
    return cell;
}


- (void)configureCell:(AnbotDeviceCollectionViewCell *)cell atIndexPath:(NSIndexPath*)indexPath
{
    
    int index =  indexPath.row *2+ indexPath.section;
    cell.section = indexPath.section;
    [cell setEnableImage:UIResourceBundleSubDevice(imageOpenArr[index])];
    [cell setDisableImage:UIResourceBundleSubDevice(imageCloseArr[index])];
   // [cell  setImage:UIResourceBundleSubDevice(imageOpenArr[index])];
    
        
    [cell setNameText:titleArr[index]];
    
    [cell setDeviceNum:[devCountArr[index]integerValue]];
    [cell setNeedsUpdateConstraints];
    [cell updateConstraintsIfNeeded];
}


-(UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout insetForSectionAtIndex:(NSInteger)section
{
    return UIEdgeInsetsMake(0, 0, 0, 0);
}

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath
{
    
    return CGSizeMake(kScreenWidth/2, collectionView.frame.size.height/2);
}

- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
{
   // NSLog(@"cell #%d was selected  %d", indexPath.row,indexPath.section);
    
    int index =  indexPath.row *2+ indexPath.section;
    if ([devCountArr[index] integerValue]==0) {
        return;
    }
    
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@" deviceType == %d ",index];
    NSMutableArray *tempArray = [NSMutableArray arrayWithArray:deviceArr];
    [tempArray filterUsingPredicate:predicate];
    AnbotSingleDeviceManagerVC *singleVC = [[AnbotSingleDeviceManagerVC alloc]init];
    singleVC.index = index; //indexPath.row *2+ indexPath.section;
    singleVC.singleDevArr = tempArray;
   // singleVC.devInfo = deviceArr[index];
    [self.navigationController pushViewController:singleVC animated:YES];

}

 

posted @ 2016-04-14 11:26  尘恍若梦  阅读(208)  评论(0编辑  收藏  举报