問題タブ [gridlayoutmanager]

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.

0 投票する
14 に答える
103629 参照

android - RecyclerView GridLayoutManager:スパン数を自動検出する方法は?

新しい GridLayoutManager の使用: https://developer.android.com/reference/android/support/v7/widget/GridLayoutManager.html

明示的なスパン数が必要なため、問題は次のようになります。行ごとにいくつの「スパン」が収まるかをどうやって知るのですか? 結局のところ、これはグリッドです。測定された幅に基づいて、RecyclerView が収まる限り多くのスパンが存在する必要があります。

古い を使用するGridViewと、「columnWidth」プロパティを設定するだけで、適合する列の数が自動的に検出されます。これは基本的に、RecyclerView で複製したいものです。

  • に OnLayoutChangeListener を追加しますRecyclerView
  • このコールバックで、単一の「グリッド アイテム」を膨らませて測定します
  • spanCount = recyclerViewWidth / singleItemWidth;

これはかなり一般的な動作のように思えますが、私が見ていないより簡単な方法はありますか?

0 投票する
1 に答える
1798 参照

android - GridLayoutManager で RecyclerView をスクロールすると ArrayIndexOutOfBoundsException が発生する

RecyclerView(com.android.support:recyclerview-v7:21.0.2) を使用し、動的な列数GridLayoutManagerを適用しています。ビューがスクロールされると、例外がスローされます。以前に表示されていなかったアイテムを表示しようとすると(再利用または再バインド)、エラーが発生するようです。ただし、そのような動的なスパン/列数を使用しないか、単に行を呼び出す行にコメントを付けないと、それは起こりません。RecyclerViewGridLayoutManager.setSpanCount

ソースコードを調べてみましたが、問題は一時配列に関連しているようmSetです。

これを解決して、動的なスパン数を持つグリッドを使用できるようにするにはどうすればよいですか? ありがとうございました。

0 投票する
2 に答える
9218 参照

android - アイテム サイズが異なる RecyclerView グリッド

幅と高さが異なるアイテムを割り当てることができる水平スクロール グリッドを作成する必要があります。StaggeredGridLayoutManagerさまざまな幅を処理できますが、高さが異なるアイテムを持つことはできません。必要なことを実行できる実装はありLayoutManagerますか?

0 投票する
1 に答える
133 参照

java - ギャラリーを表示するための正方形を作成する方法は?

GridLayoutManager で recyclerview を生成して列を自動スパンするために、このメソッドLINKを使用していますが、holderview の正方形のダミー レイアウトを作成できませんでした。私の意図は、recyclerview を使用してギャラリーを模倣することです。

0 投票する
1 に答える
1761 参照

android - SpanGroupIndex および SpanIndex リサイクラー ビュー

私は GridLayoutManager のドキュメントとその RecyclerView の SpanSizeLookUp クラスを見ていました。しかし、SpanSizeLookUp クラスの getSpanGroupIndex メソッドと getSpanIndex メソッドについてはわかりません。また、任意の数(スパンカウント未満)をオーバーライドして返すことで実験しました。しかし、それが何に使われているかを知ることはできません。

ドキュメンテーションの説明を理解できません。これをクリアしたい。