2013-03-19 12 views
5

私はいくつかのセルでいっぱいのUICollectionViewを持っていて、私はメソッドを実装しました- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath これは魅力的ですが、スクロール中は機能しません。それはスクロールが非常に敏感なので、私はセルをプッシュしてメソッドを呼び出すことを意味するので、問題である、私は結果なしでスクロールを終了します。UICollectionViewがスクロールしている間に応答していますか?

だから私は、これに対抗する方法を疑問に思うし、この思い付いた:

  • 私は単にそれがスクロールしている間に対応するための方法を設定することはできますか?
  • そうでない場合 - 単に2本の指を使用するとスクロールするだけですか? 2つのアクションを別々にする。

あなたはそれをタップすると、事前

答えて

6

のおかげでUICollectionViewCellの選択が起こります。タップは短くて1か所にする必要があります。あなたが代わりにスクロールすれば、おそらく正しくタップしていないでしょう。このような場合は、Mailのようなビルトインアプリを使用しているときにも発生します。

UICollectionViewは、UITapGestureRecognizerを使用して細胞の選択を認識する。このジェスチャーレコグナイザーでは、この場合に役立つ具体的な設定は許可されていません。

UIPanGestureRecognizerに2本の指が必要になる場合がありますが、それが本当に必要かどうかを考える必要があります。あなたは、Appleがそれを使用する方法と同じように使うのがよいでしょう、ユーザーはそれに慣れています。言っ

は、ここではドキュメントページは、コレクションビューのジェスチャーのサポートにあります: http://developer.apple.com/library/ios/#documentation/WindowsViews/Conceptual/CollectionViewPGforIOS/IncorporatingGestureSupport/IncorporatingGestureSupport.html

あなたが内部的に使用UIPanGestureRecognizerminimumNumberOfTouchesプロパティを変更するためにこれを使用することができるかもしれません。しかし、再び、私はあなたがすべきだとは思わない。

関連する問題