[解決済み] RecyclerViewの一番下までスクロールするには? scrollToPositionが機能しない
2022-04-20 01:28:06
質問
アクティビティを読み込んだ後、RecyclerViewのリストの一番下までスクロールしたいのですが、どうすればいいですか?
GENERIC_MESSAGE_LIST = (ArrayList) intent.getExtras().getParcelableArrayList(ConversationsAdapter.EXTRA_MESSAGE);
conversationView = (RecyclerView) findViewById(R.id.list_messages);
conversationView.setHasFixedSize(true);
conversationViewLayoutManager = new LinearLayoutManager(this);
conversationView.setLayoutManager(conversationViewLayoutManager);
conversationViewAdapter = new ConversationAdapter(GENERIC_MESSAGE_LIST, this);
conversationView.setAdapter(conversationViewAdapter);
conversationView.scrollTo(...)
はRecyclerViewでサポートされていないことに関する例外を投げます。
conversationView.scrollToPosition(...)
は何もしないようです。
上記のコードブロックの後に
conversationView.scrollToPosition(GENERIC_MESSAGE_LIST.size() + 1)
というのはうまくいきません。の中に30個の要素があります。
GENERIC_MESSAGE_LIST
.
解決方法は?
を設定するだけです。
setStackFromEnd=true
または
setReverseLayout=true
で、LLMが末尾から項目をレイアウトするようにします。
この2つの違いは
setStackFromEnd
は、最後の要素を表示するようにビューを設定しますが、レイアウトの方向は同じままです。(つまり、左から右への水平リサイクラービューでは、最後の要素が表示され、左へスクロールすると、それ以前の要素が表示されます)
一方
setReverseLayout
は、 アダプタが追加する要素の順番を変更します。レイアウトは最後の要素から始まり、LTR Recycler View では一番左の要素になります。
サンプルです。
final LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getActivity());
linearLayoutManager.setReverseLayout(true);
_listView.setLayoutManager(linearLayoutManager);
参照 ドキュメンテーション をご覧ください。
関連
-
Java エラー報告 スレッド "main" での例外 java.util.NoSuchElementException
-
JDKの設定時にjava.dllが見つからない、java SE Runtime Environmentが見つからない問題が発生しました。
-
サーブレットクラスのインスタンス化エラーの解決法
-
アイデア Springboot Web プロジェクトを jar にパッケージ化する場合、Error: 無効または破損した jarfile x.jar 解決策
-
[解決済み] Androidのソフトキーボードをプログラムで閉じる/隠すにはどうすればよいですか?
-
[解決済み] インスタンス状態の保存を使用してアクティビティ状態を保存するにはどうすればよいですか?
-
[解決済み] JavaScriptでページの一番上までスクロールする?
-
[解決済み] Javaの「for each」ループはどのように機能するのですか?
-
[解決済み】RecyclerViewをスクロールして、選択したアイテムを一番上に表示させる。
-
[解決済み】ユーザーが一番下までスクロールしたかどうかを確認する(ウィンドウだけでなく、任意の要素)【重複】。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Java エラー報告 スレッド "main" での例外 java.util.NoSuchElementException
-
エラー java.util.NoSuchElementException
-
Java のエラーです。未解決のコンパイル問題 解決方法
-
Java Exceptionが発生しました エラー解決
-
この行に複数のマーカーがある - HttpServletResponseが型エラーに解決できない
-
this()の呼び出しはコンストラクタ本体の最初の文でなければならない 例外解決と原因分析
-
Eclipseプロンプトを実行する java仮想マシンを使用しない
-
xxx:jarのアーティファクトディスクリプタの読み込みに失敗した問題は解決しました。
-
Javaエラーメッセージがenclosingクラスでない
-
Google Chromeのエラー「Not allowed to load local resource」の解決策について