zoukankan      html  css  js  c++  java
  • IOS--纯代码实现UICollectionView

    1.初始化一个UICollectionView

    @property (nonatomic, strong) UICollectionView *shareCollectionView;

    2.设置基本属性

    CGFloat itemWidth = (SCREEN_W - 40 ) / 4.5;
        CGFloat itemHeight = 100;
        UICollectionViewFlowLayout *shareflowLayout = [[UICollectionViewFlowLayout alloc] init];
        shareflowLayout.scrollDirection = UICollectionViewScrollDirectionHorizontal;
        shareflowLayout.sectionInset = UIEdgeInsetsMake(0, 0, 0, 15);
        shareflowLayout.itemSize =CGSizeMake(itemWidth, itemHeight);
        _shareCollectionView = [[UICollectionView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_W, 100) collectionViewLayout:shareflowLayout];
        _shareCollectionView.backgroundColor = [UIColor clearColor];
        [self.footView addSubview:_shareCollectionView];
        [_shareCollectionView registerClass:[HMShareCollectionViewCell class] forCellWithReuseIdentifier:@"cell"];
        _shareCollectionView.delaysContentTouches = NO;
        _shareCollectionView.delegate = self;
        _shareCollectionView.dataSource = self;
        _shareCollectionView.scrollEnabled = YES;
        _shareCollectionView.showsHorizontalScrollIndicator = NO;

    3.实现代理方法

    #pragma mark collectionView代理方法
    
    - (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView
    {
        return 1;
    }
    
    - (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section
    {
       
         return _shareTypeArr.count;
        
    }
    
    - (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
    {
        HMShareCollectionViewCell *cell = (HMShareCollectionViewCell *)[collectionView dequeueReusableCellWithReuseIdentifier:@"cell" forIndexPath:indexPath];
        //设置数据
        
        return cell;
    }
    
    - (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
    {
        NSLog(@"%@",indexPath);
        
    }

    4.cell的设置 .m

    - (instancetype)initWithFrame:(CGRect)frame
    {
        self = [super initWithFrame:frame];
        if (self) {
            //设置控件
        }
        return self;
    }

     

  • 相关阅读:
    SuperMap-iServer-单点登录功能验证(CAS)
    Oracle数据库的链接数目超标
    转载---javascript 定时器总结
    JMeter使用文档
    转载--改变ubuntu默认编码为GBK
    遥感数据下载
    Supermap iCloudManager -负载均衡
    XCode: 如何添加自定义代码片段
    imageNamed和dataWithContentsOfFile的区别(1)
    imageNamed 与 imageWithContentsOfFile的区别
  • 原文地址:https://www.cnblogs.com/qiyiyifan/p/7305434.html
Copyright © 2011-2022 走看看