2013-09-30 3 views
1

나는 여러 행과 열에 그래픽 집합을 표시하기 위해 UICollectionView을 사용하고 있습니다. 사용자는 pinchGesture을 사용하여 확대/축소 할 수 있습니다.UICollectionViewFlowLayout에서 itemSize에 애니메이션을 적용하는 방법은 무엇입니까?

사용자가 그래프 크기를 확대하고 사용자가 축소하면 그래프 크기가 ​​감소합니다. 그래프의 크기를 변경하려면 속성 itemSizeUICollectionViewFlowLayout에서 변경하고 있습니다. 그것은 잘 작동하지만 다음 코드로 변경 애니메이션 드릴 수 없습니다 : 방법이 변경 애니메이션을

[UIView transitionWithView:self.theCollectionView 
        duration:0.5f 
        options:UIViewAnimationOptionCurveLinear 
       animations:^() { 
        _theFlowLayout.itemSize = cellSize; 
       } 
       completion:nil]; 

어떤 생각을?

감사합니다,

세바스티앙.

답변

0

컬렉션 뷰의 performBatchUpdates 메서드를 사용하면 레이아웃을 무효화하고 다시 쿼리하고 새로운 값으로 애니메이션을 적용 할 수 있습니다. 이 같은

뭔가 : 당신은 불행하게도, 애니메이션의 타이밍 또는 곡선을 제어 할 수없는

_theFlowLayout.itemSize = cellSize; 
[self.theCollectionView performBatchUpdates:nil completion:nil]; 

.

관련 문제