2011-03-10 Android Android Androidアプリでリストを最後まで読んだら検知する方法の続きです。とりあえず、『リストを最後まで読んだら検知すること』は成功しました。ともあれ、これだけでは全くわからないので、使ったメソッドと、その動作についてまとめます。『リストがスクロールしたこと』を検知することは前の投稿にも書いたとおり、http://developer.android.com/reference/android/widget/AbsListView.OnScrollListener.htmlを使います。使用するメソッドはonScrollです。ただ、APIとして記述されている内容だけだとぶっちゃけわかりません(汗英語力不足なんでしょうか。。。。仕方がないので動作確認した結果、下記の動作となることがわかりました。firstVisibleItem:一番上に表示されてるアイテムのインデックスvisibleItemCount:画面に表示されてるアイテム数totalItemCount:リストに存在している全アイテム数図に示すと下記のようになります。なので、「firstVisibleItem + visibleItemCount == totalItemCount」の条件を満たした場合のみOnScrollからイベントを発生させるようにすれば、リストを最後までスクロールした場合に処理を行うことが可能となります。差分がtotalの10%になったら発動、というようにすれば「下の残りが少なくなったら随時追加読み込みを行う」という処理も可能になります。さて、とりあえず検知と、イベント発動が可能であることがわかったので、後は読み込み処理を上手く共通化して扱うための手法、ですね。作成が成功したらその3として投稿します。