2013-12-16 27 views
5

と、このセルアニメーションを実装する方法を、私はUICollectionViewを使用することができると思いますが、アニメーションの一部はトリッキーであるように見えます。私はリストについて<a href="http://youtu.be/ZbXSOX2kHys" rel="nofollow">this animation</a></p> <p>を作成しようとしているUICollectionView

これに関するご意見はありますか?

+0

、デリゲート方法でUICollectionViewのdecelaratingときに細胞の層をアニメーション.. –

+2

ユーザが特定「-Y」poisitionに表示されているセルの層を移動してアニメーションと復元、スクロールを開始するたびにコレクションビューが減速するときのyの位置..これが意味をなさないかどうか教えてください。 –

+1

https://github.com/TeehanLax/UICollectionView-Spring-Demo – souvickcse

答えて

3

あなたが跳ねるアニメーションの部分を意味するならば、それほど難しいことではありません - アップルは同じコードで、同じコードでUIDynamics(iOS7 +のみ)のデモを行っています。

あなたが後にしているものに非常に近い見えますここにもう一つの例があります:アニメーション例えば途中で

http://www.objc.io/issue-5/collection-views-and-uidynamics.html

ルックが。コレクションビューも使用します。

+0

これは私が必要とするものに非常に近いですが、私のアプリにiOS6をサポートします。 – jAckOdE

+0

iOS6のUIDynamicのクローンを見つけることができれば、それは解決策(UICollectionView + iOS6 Dynamic)になります。おそらく、Box2dのラッパーになるでしょう。私はさらに見ていきます。 – jAckOdE

1

@Kendallが言ったように、あなたは本当にUIDynamicsを試す必要があります。

すぐに回避するには、以下のコードを試しました。これはややうまく動作し、コードに関連しています。 私はパフォーマンスについて知らない。したがって、プロジェクトのパフォーマンスが低下する可能性があります。

これは単なるアイデアです。それがあなたのために働いていない場合、それをそのまま残してください。 UICollectionViewCellのアニメーションの

- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath 
{ 
    MyCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"MyCollectionViewCell" forIndexPath:indexPath]; 

    [UIView animateWithDuration:0.2 animations:^{ 
     cell.transform = CGAffineTransformMakeTranslation(0.0, -50); 
    }]; 
    [self delayBy:0.5 code:^{ // call block of code after time interval 
     [UIView animateWithDuration:0.3 animations:^{ 
      cell.transform = CGAffineTransformIdentity; 
     }]; 
    }]; 
    return cell; 
} 
+0

AppleのCollectionView-simpleサンプルコードでこのコードを使用します(ブロックスタイルコードの代わりにこれを使用します:[self performSelector:@selector(restore :) withObject:cell afterDelay:0.5];)、これはiOS 6では機能しません。 iOS 7では、コレクションビューに挿入された新しいセルのみがアニメーション化されます。 – jAckOdE

+0

このコードは 'cellForRowAtIndexPath:'メソッドの中にあるため、画面内の可視セルに対して呼び出されることはありません。そのためには、再利用せずにセルを作成する必要があります。そうでなければ、 'UIScrollView'の' scrollViewDidScroll: 'delegateメソッド(' UICollectionView'は 'UIScrollView'のサブクラスです)の可視セルのアニメーションを処理する必要があります。私が言ったことを得ることを願っています。 –

関連する問題

 関連する問題