4

SnapChat と同様に、ユーザーが左または右にスワイプしてビュー コントローラー間を移動できるように、アプリケーションをセットアップしました。UIScrollViewページングを有効にした を使用してこれを実装しました。

私も実装したいSnapChatの機能の1つは、ユーザーがテーブルビューでセルを選択し、それをスライドさせ始め、特定のポイントの後にセルを「ロック」する機能です。ビュー全体を画面全体に引き込みます。SnapChat を使用したことがない場合、これを想像するのは少し難しいかもしれません。そのため、私が話している内容の画像を含めました。

ここに画像の説明を入力 ここに画像の説明を入力

UIScrollView を使用してこの機能を実装するにはどうすればよいですか?

現在、私のScrollViewのView Controllerの1つには、スワイプを検出したときにスライドできるジェスチャー認識機能を含むUITableViewカスタムがあります。UITableViewCellsGesture Recognizer が一定量以上の平行移動を検出すると、ビュー コントローラーに対するセルのスライドが停止し、代わりにスクロール ビュー全体がスライドし始めます。

これは、SnapChat とほぼ同じ効果を達成しますが、見た目が良くなく、非常にバグが多いです。たとえば、ユーザーがテーブルビュー セルをフリックしようとすると (SnapChat でよく行われるように)、ファンにヒットします。

SnapChat のこの機能の実装は、セルを一定量スライドさせた後、ユーザーがスクロール ビューの「制御を保持する」という印象を与えます。これは非常に洗練されたユーザー エクスペリエンスであり、それを再現する方法がわかりません。

提供すべき追加の役立つ情報 (これまでのコードなど) がある場合は、お知らせください。

4

1 に答える 1