扫码关注官方订阅号
在这个代理方法中怎么得到的cell永远都是空的?why??
小伙看你根骨奇佳,潜力无限,来学PHP伐。
计算size的时间是在初始化cell之前,所以在计算size/height时调用
objc[collectionView cellForItemAtIndexPath:indexPath]; // 或者 [tableView cellForRowAtIndexPath:indexPath];
objc
[collectionView cellForItemAtIndexPath:indexPath]; // 或者 [tableView cellForRowAtIndexPath:indexPath];
这两个都会返回nil。
有两个方法可以拿到Cell: 1. [self cellForItemAtIndexPath:indexPath];可以拿到,缺点是内存中会产生额外的cell。因为collectionView还会调用这个方法创建cell。 2. 直接使用数据模型里的数据计算size,存入数据模型或者缓存。
[self cellForItemAtIndexPath:indexPath];
你的cell是不是没有注册初始化?你的代理方法cellForItemAtIndexPath中的cell是不是返回nil?
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
计算size的时间是在初始化cell之前,所以在计算size/height时调用
这两个都会返回nil。
有两个方法可以拿到Cell:
1.
[self cellForItemAtIndexPath:indexPath];
可以拿到,缺点是内存中会产生额外的cell。因为collectionView还会调用这个方法创建cell。2. 直接使用数据模型里的数据计算size,存入数据模型或者缓存。
你的cell是不是没有注册初始化?你的代理方法cellForItemAtIndexPath中的cell是不是返回nil?