Android, 時々Web

Androidアプリを作ったり、Webサービスを作ったりする中で困ったことや詰まったことを解決したときの備忘録です。備忘録なので、正しい答えが書いてあるとは限りません。

Android - ドラッグで並び替えられるListView(DragSortListView)の簡単な使い方

Androidアプリを作っていると、ListViewのアイテムをドラッグして並び替えたいということはよくあるし、実際そのような実装を行ってるアプリはいくつもありますが、そういった機能を持ったListViewは標準では存在しません(API Level 22時点)。

 

そこで実際にドラッグでアイテムを並び替えできる機能を持っているアプリがどうしてるのかと思って、ためしにGoogle Play Musicのアプリの「オープンソースライセンスについて」を見てみました。

そうすると「DragSortListView」というライブラリが見つかりました。絶対これです。

 

DragSortListView:

bauerca/drag-sort-listview · GitHub

 

DragSortListViewでggってみると、いくつか記事が見つかり、中には実装方法を解説しているブログも見つかりましたが、なんだか複雑なことをしていてとっつきにくそうです。ライブラリのGitHubの公式ページのREADMEにある程度の情報はありますが、なにせ英語ですので正しい理解ができているか不安です。

 

見つかった記事:

DragSortListViewを使ってみる | だんごやのプログラム開発の備忘録

ListViewでドラッグ&ドロップ - yokkongの日記

 

もっと簡単に、一番シンプルな形の実装が知りたいのですが、日本語で見つからないので、英語で(主にStackOverflow狙いで)検索を掛けてみると、みごとに見つかりました。最小限の使い方。

これを見ればだいたい使い方がわかると思います。

java - Bauerca drag-sort-listview simple example - Stack Overflow

 

日本語版のStackOverflowが出来ましたが、まだまだ英語版のほうが情報が豊富ですね。ユーザーの数も投稿数もかなわないので当然といえば当然ですが。