ios UICollectionView使用

UICollectionView列表视图和UITableView用法类似,直接给出代码

//
//  myUICollectionViewTestController.m
//  iosstudy2024
//
//  Created by figo on 2025/1/21.
//

#import "UICollectionViewTestController.h"

@interface UICollectionViewTestController ()<UICollectionViewDelegate,UICollectionViewDataSource>
@property (strong, nonatomic) IBOutlet UICollectionView *myUICollectionView;

@end

@implementation UICollectionViewTestController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view from its nib.
//    self.myUICollectionView.dataSource=self;
//    self.myUICollectionView.delegate=self;
    
    /* 纯代码方式写   **/
    // 设置 myUICollectionView 的布局
      UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init];
      
      // 初始化 myUICollectionView
      self.myUICollectionView = [[UICollectionView alloc] initWithFrame:self.view.bounds collectionViewLayout:layout];
      self.myUICollectionView.backgroundColor = [UIColor whiteColor];  // 设置背景色
      self.myUICollectionView.delegate = self;
      self.myUICollectionView.dataSource = self;
      
      // 注册 myUICollectionViewCell
      [self.myUICollectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:@"MyCell"];
      
      // 将 myUICollectionView 添加到视图中
      [self.view addSubview:self.myUICollectionView];
   
}

/*
#pragma mark - Navigation

// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    // Get the new view controller using [segue destinationViewController].
    // Pass the selected object to the new view controller.
}
*/


- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
    UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"MyCell" forIndexPath:indexPath];
    cell.contentView.backgroundColor = [self randomColor];
    // 配置 cell,比如设置 label 文本
    return cell;
}

- (NSInteger)collectionView:(nonnull UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
    return 12;
}



- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
    NSLog(@"Selected item at index %ld", (long)indexPath.item);
}

- (UIColor *)randomColor {
    CGFloat red = (CGFloat)arc4random_uniform(256) / 255.0;
    CGFloat green = (CGFloat)arc4random_uniform(256) / 255.0;
    CGFloat blue = (CGFloat)arc4random_uniform(256) / 255.0;
    
    return [UIColor colorWithRed:red green:green blue:blue alpha:1.0];
}

@end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值