問題タブ [android-recyclerview]
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 - カスタム ListView に 3 つの RadioButton があるカスタム行
3 つのラジオ ボタンを持つカスタム行があります。
いくつかのラジオボタンをチェックしてからスクロールすると、リストビューがラジオボタンの参照を失い、戻ってきたときにラジオボタンがチェックされません。またはスクロールすると、最後のラジオボタンがチェックされます(ただし、この行のラジオボタンをクリックしませんでした)
ここにコードがあります
アダプタ
OnCheckedChanged
そして、これがカスタム行です
android - overScrollBy() と onOverScrolled() が RecyclerView で機能しないのはなぜですか
カスタム内でこれらのメソッドを使用したいと思ってRecyclerView
いましたが、何らかの理由で機能せず、理由がわかりません...
私が実際に望んでいるのは、リストの先頭に空のスペースを追加して、最初の項目を一定の距離mOverscrollDistance
でスクロールできるようにすることです。これを達成する方法についてより良い提案があれば、共有してください!
android - RecyclerView でレイアウトを更新するにはどうすればよいですか?
画像を非同期にロードするRecyclerView
が含まれているため、しばらくすると高さが変わるカスタム ビューがたくさんあります。を呼び出しても、はImageView
このRecyclerView
レイアウト変更を認識しません。は で初期化されます。のすべてのコンテナの親が設定されています。forceLayout
ImageView
RecyclerView
setHasFixedSize(false)
ImageView
android:layout_height="wrap_content"
RecyclerView
レイアウトを更新するにはどうすればよいですか? good'ol ではListView
、これは問題ではありませんでした。
android - RecyclerView スクロールバーの遅延
新しいリサイクラー ビューを使用したとき、スクロールバーが通常の ScrollView/ListView ほど流動的ではないことに気付きました。アダプターアイテム内をスクロールしても認識しないようですが、新しいアイテムが表示される/古いアイテムが消えるときにのみ変更されるため、プログレスバーはスムーズに移動する代わりにジャンプします。これは、この問題を説明するビデオです。滑らかにする方法はありますか?
私のレイアウト:
断片:
アダプタ:
}
android - スクロール時に RecyclerView をアニメーション化する
スクロールするときに RecyclerView の要素をアニメーション化する方法はありますか?
DefaultItemAnimator
とを調べましRecyclerView.ItemAnimator
たが、アニメーションはデータセットが変更された場合にのみ呼び出されるようです。間違っている場合は修正してください。
私RecyclerView.ItemAnimator.animateMove()
はそれがいつ呼ばれるかについて少し混乱していますか?そのクラスにいくつかのブレークポイントを設定しましたが、どれもアプリを停止しません。
しかし、私の質問に戻って、どうすれば RecyclerView をアニメーション化できますか? いくつかのカスタムルールに応じて、いくつかの要素に別の不透明度を持たせたい.
アニメーションの動きはまさに私が探しているものであるようです。そのメソッドは から呼び出されdispatchLayout()
ます。そのメソッドの javadoc は次のとおりです。
レイアウトによるアニメーションの変更を処理する layoutChildren() のラッパー。アニメーションは、再生中の 5 種類のアイテムがあることを前提として動作します:
PERSISTENT: アイテムはレイアウトの前後に表示されます
REMOVED: アイテムはレイアウト前に表示され、アプリによって削除されました
ADDED: アイテムはレイアウト前には存在せず、アプリによって追加されましたアプリ
DISAPPEARING: アイテムは前後にデータ セットに存在しますが、レイアウトの過程で可視から非可視に変更されました (それらは他の変更の副作用として画面外に移動されました)
APPEARING: データ セットにアイテムが存在します前/後、しかしレイアウトの過程で非表示から表示に変更されました(他の変更の副作用として画面上に移動されました)
全体的なアプローチでは、レイアウトの前後にどのアイテムが存在するかを把握し、各アイテムについて上記の 5 つの状態のいずれかを推測します。次に、アニメーションがそれに応じて設定されます:
PERSISTENT ビューが移動されます ({@link ItemAnimator#animateMove(ViewHolder, int, int, int, int)}) REMOVED ビューが削除されます ({@link ItemAnimator#animateRemove(ViewHolder)})
ADDED ビューが追加されます ({@link ItemAnimator#animateAdd(ViewHolder)})
DISAPPEARING ビューが画面外に移動されます
APPEARING ビューが画面上に移動されます
これまでのところ、私は PERSISTENT、DISAPPEARING、および APPEARING を探していますが、この行のためにそのメソッドが呼び出されることはありません:
mItemsAddedOrRemoved
は単純に常に false であるため、そのコールバックには到達しません。セットフラグを正しく設定する方法はありますか?
android - RecyclerView アイテムの背景セレクター
私はRecyclerView
以下のようなものを使用しています:
と私のリスト項目:
この部分を詳しく見てください。これandroid:background="@drawable/selector_medium_high"
は通常のセレクターです。
しかし、このコードを実行すると、行に触れても背景色に変化はありません....
android - クラス android.support.v7.widget.RecyclerView の膨張エラー
既存のプロジェクトで RecyclerView を使用しようとしていますが、エラーなしでビルドされますが、膨張中に RecyclerView のクラスが見つからないというエラーが発生します。私が間違っていることがわかりません。助けてくれてありがとう!
//activity_main.xml
//build.gradle
//LOGCAT
android - Android: ScrollView 内の RecyclerView
私は a を a にRecyclerView
ラップしてLinearLayout
おり、期待どおりに完全に機能します。すべてのデータがRecyclerView
取り込まれた状態で表示されます。ここまでは順調ですね。
を でラップするLinearLayout
とScrollView
、RecyclerView
が空白になります。中には何も見えませんRecyclerView
。なんで?これを機能させる方法。
ページは のタブの 1 つであるViewPagerIndicator
ため、そのタブのすべてが にある必要がありますScrollView
。
すべての助けをありがとう。