2013-09-24 5 views
9

Я подклассифицирую UICollectionViewLayout, и метод layoutAttributesForItemAtIndexPath: никогда не вызывается.UICollectionViewLayout, когда layoutAttributesForItemAtIndexPath называется

Я знаю, чтобы переопределить layoutAttributesForElementsInRect:, но я бы предпочел не иметь дело с rect, так как это будет намного проще, если я просто касаюсь указательного пути.

Если layoutAttributesForItemAtIndexPath: никогда не называется, в чем смысл его?

ответ

2

layoutAttributesForItemAtIndexPath: фактически вызывается при смене макетов с анимированным параметром, установленным в true.

3

layoutAttributesForItemAtIndexPath: называется в разном scenarii, при добавлении новых клеток в целях сбора, при изменении макета, при перезагрузке конкретных путей индекса и т.д.

Вы должны реализовать его, даже если он выиграл Вызывается в сценарии «по умолчанию».

0

Мне это интересно, потому что я надеялся, что layoutAttributesForElementsInRect: позвонит layoutAttributesForItemAtIndexPath:. Но это не так.

Если вы хотите, чтобы убедиться, что возвращаемые атрибуты макета всегда изменяется, увидеть мой ответ здесь: UICollectionViewLayout layoutAttributesForElementsInRect and layoutAttributesForItemAtIndexPath

Смежные вопросы