画竜点睛を衝く@mapyo

日々やった事をつらつらと書くブログです

RecyclerViewで一番下にフォーカスを当てる

チャットみたいな感じで画面を開いた時に、一番下が表示されるようにしたかったんですが、軽くググッた範囲だとListviewでの方法しか見つけられなかったのでメモ。

shinodogg.com

しかしちゃんと書こうとするといろいろとめんどくさい気持ちが高まってきたのでメモだけ。。

// いろいろ準備
private Recyclerview mMyRecyclerView;
private MyRecyclerViewAdapter mMyRecyclerViewAdapter;

mMyRecyclerView.setHasFixedSize(false);
mMyRecyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));

mMyRecyclerViewAdapter = new MyRecyclerViewAdapter();

mMyRecyclerView.setAdapter(mMyRecyclerViewAdapter);


// 値のセット
mMyRecyclerViewAdapter.setList(mList);

// 一番下に移動する
mMyRecyclerView.scrollToPosition(mMyRecyclerViewAdapter.getItemCount()-1);

参考

RecyclerView | Android Developers

とりあえず、画面を開いた時にあれどうすればいいんだっけ?となったら、 RecyclerView.AdaptergetItemCountと、RecyclerviewscrollToPositionを使うとよさそう。