我正在继承 UICollectionViewLayout,并且该layoutAttributesForItemAtIndexPath:
方法从未被调用。
我也知道要覆盖layoutAttributesForElementsInRect:
,但我宁愿不必处理 rect,因为如果我只处理索引路径会简单得多。
如果layoutAttributesForItemAtIndexPath:
从不调用,那有什么意义?
我正在继承 UICollectionViewLayout,并且该layoutAttributesForItemAtIndexPath:
方法从未被调用。
我也知道要覆盖layoutAttributesForElementsInRect:
,但我宁愿不必处理 rect,因为如果我只处理索引路径会简单得多。
如果layoutAttributesForItemAtIndexPath:
从不调用,那有什么意义?
layoutAttributesForItemAtIndexPath:
在不同的场景中调用,当您向集合视图添加新单元格时,当您更改布局时,当您重新加载特定的索引路径等时。
您需要实现它,即使它不会在“默认”场景中被调用。
layoutAttributesForItemAtIndexPath:
在动画参数设置为 true 的情况下更改布局时实际调用。
我自己也想知道这个,因为我希望layoutAttributesForElementsInRect:
会打电话给layoutAttributesForItemAtIndexPath:
. 但事实并非如此。
如果要确保始终修改返回的布局属性,请在此处查看我的答案: UICollectionViewLayout layoutAttributesForElementsInRect 和 layoutAttributesForItemAtIndexPath