RecyclerViewで一覧画面のスワイプを作成する2016年04月09日(編集2016年04月09日)TweetAndroidアプリで一覧データのUI(ユーザーインターフェース)を作成する場合は、ListViewかRecyclerViewを使います。RecyclerViewで作成した一覧画面では、スワイプを実装することが可能です。この記事は、RecyclerViewでスワイプの実装方法を記載した記事です。中級者向けサンプルコードhttps://github.com/java-lang-programming/Android-RecyclerView-DemoRecyclerViewとはRecyclerViewクラスは、Androidアプリで一覧画面のUIを作成する時に利用します。RecyclerViewで作成した一覧画面スワイプスワイプは、画面で指を滑らせる操作のことです。PlayのスワイプRecyclerViewのスワイプ機能は、一覧表示の項目を動作させることが可能です。RecyclerViewのスワイプスワイプの実装RecyclerViewでスワイプを実装するには、一覧表示の実装ができることが前提です。一覧表示の実装方法を理解してないなら、「RecyclerViewで一覧画面を作成する」の記事を読んで、一覧表示の実装をできるようにしてください。使用クラスItemTouchHelperクラスを利用します。ItemTouchHelperクラスは、RecyclerViewにスワイプやドラッグ&ドロップ機能を追加できます。一覧表示のRecycleViewに、スワイプ機能を追加します。スワイプ機能はItemTouchHelperクラスを利用します。コード内で以下のようにItemTouchHelperを生成します。}ItemTouchHelperは、RecyclerView.ItemDecorationのサブクラスで、OnChildAttachStateChangeListenerインターフェースを実装しています。UMLItemTouchHelperクラスのコンストラクタにSimpleCallbackクラスを設定します。ItemTouchHelper.SimpleCallbackクラスはabstractクラスです。匿名クラスで具体的な実装をしています。});生成したItemTouchHelperクラスのオブジェクトswipeToDismissTouchHelperでattachToRecyclerViewメソッドを呼び出し、RecyclerViewに機能を追加します。swipeToDismissTouchHelper.attachToRecyclerView(recyclerView);ビルドして実行ビルドしてアプリを実行します。アプリでスワイプを実施スワイプ処理が可能になりました。スワイプ後の処理実装さらに、スワイプ後の処理を実装してみます。スワイプ後の処理は、onSwipedメソッドを使用します。}ItemTouchHelper.CallbackクラスのonSwipedメソッドをオーバーライドします。リストデータを削除し、アダプターでRecyclerVieweに削除を通知します。adapter.notifyItemRemoved(viewHolder.getAdapterPosition());}ビルドして実行ビルドしてアプリを実行します。アプリでスワイプを実施スワイプ処理後にデータが削除されるようになりました。まとめItemTouchHelperを利用すると、RecyclerViewで簡単にスワイプ処理を実装することができます。ユーザーインターフェース的に使いどころの難しい機能ですが、GmailやInboxを参考に機能を実装してみてはいかがでしょうか。TIPSスワイプのアニーメーション中に背景が変化するGmail風のユーザーインターフェースは、ItemTouchHelperでは実現できません。スクロールの処理中のviewを変える必要があるので、スクロール処理を変更してください。