問題タブ [linearlayoutmanager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - layoutmanager.FindFirstCompletelyVisibleItemPosition は常に -1 を返します
Android プロジェクトに、各ビュー内にメディア コンテンツを表示する recyclerview があります。私が達成しようとしているのは、上下にスクロールしながらメディアを再生/一時停止できることです。完全に見えるビューのアダプター位置を取得する必要があります。私はこのようなことをしています。
私のアクティビティフラグメントには、次のものがあります。
スクロール リスナー イベントは次のようになります。
FindFirstCompletelyVisibleItemPosition
問題は、ビューが完全に表示されている場合でも、linearlayout マネージャー メソッドが常に -1 を返すことです。FindFirstVisibleItemPosition
やのような他のメソッドFindLastVisibleItemPosition
は、ビューの正しい位置を示します。
ここで何が問題なのですか?
android - RecyclerView: アイテムがビューの下部に表示されるようにスクロール位置を設定します
高さの異なるアイテムを備えたアダプターに裏打ちされたRecyclerView
を持っています。項目 X が (多かれ少なかれ) 正確に画面の一番下に表示されるように、スクロール位置を設定するように指示する方法はありますか?LinearLayoutManager
RecyclerView
試してみLinearLayoutManager.scrollToPosition()
ましたが、これによりアイテムがビューの上部に配置されます。
android - サポート ライブラリを 23.3.0 に更新した後、Android カスタム リニア レイアウト マネージャーが 0 アイテム数を返す
Android の設計およびサポート ライブラリを 23.3.0 に更新した後、カスタム リニア レイアウト マネージャーは次の例外をスローします。
この行でエラーが発生します:
RecyclerView
これは、このレイアウト マネージャーをバインドするコードです。
以前のサポート ライブラリ バージョン 23.1.0 では正常に動作していましたが、更新後にエラーがスローされます。NavigationView
また、23.1.0 デザイン ライブラリに追加できないため、23.3.0 に更新する必要があります。xml ファイルで次のエラーがスローされます。
ランタイムで次のエラーが発生します。
これを修正する方法を教えてください!
android - RecyclerView に追加されたアイテムが下部に表示されない
私はRecyclerView
テキストアプリタイプの方法でメッセージを表示するために使用しています。つまり、に追加された新しいメッセージRecyclerView
が下部に表示されるはずです。
現在、メッセージを下から表示するため.setStackFromEnd(true)
に on myを使用しています。LinearLayoutManager
何が起こるかというと、十分な数のメッセージが受信され、メッセージのリストが画面の上部を超えてオーバーフローしそうになると、常に下部に新しいメッセージが表示されなくなります。新しい追加を表示するには、手動で下にスクロールする必要があります。
常に最新のメッセージを表示できるようにするかRecyclerView
、新しいアイテムを受信したときに下にスクロールするようにするにはどうすればよいですか?
.scrollToPosition()
レイアウトマネージャーでさまざまな方法を試し.scrollToPositionWithOffset()
ましたが、これまでに見た提案はどれもうまくいきませんでした。この問題に関するいくつかの上位の StackOverflow の質問には、元の質問を解決することさえできない上位の回答があります..
それで、これはどのように行われますか?
android - RecyclerView の SaveInstanceState
これは私のデータです
これはOnCreateメソッドの私のリサイクラービューです
onSaveInstanceState と onRestoreInstanceState を使用してデータ リストを保存し、ローテーションで消えないようにするにはどうすればよいですか?
android - RecyclerView をスクロールする必要があるかどうかを確認する
を介して RecyclerView の特定の項目にプログラムでスクロールした後に発生するコールバックがありますLinearLayoutManager.smoothScrollToPosition()
。ユーザーが項目をタップすると、右側の項目が RecyclerView の上部にスクロールされます。LinearLayoutManager をサブクラス化して、常にアイテムの上部にスナップするようにしました。
これは、スクロール イベントが発生した場合に機能しますが、RecyclerView が既に正しい位置にある場合は、onScrollStateChanged
スクロールが発生しないため、コールバックを取得できません。とにかくそのイベントを取得する方法はありますか?RecyclerView をスクロールする必要があるかどうかを事前に決定しますか?