私はアンドロイドのマテリアル デザイン API で作業しており、一部のデータをグリッド形式で表示したいと考えています。私は両方を試してみましたがGridLayout
、StaggeredGridlayout
両方とも同じように見えます。一般的な情報として、との違いは何ですか? Gridlayout
StaggeredGridlayout
ありがとうございました。
5 に答える
Grid View :ViewGroup
アイテムを 2 次元のスクロール可能なグリッドに表示するビューです。この各グリッドは同じサイズ (高さと幅) です。グリッド ビューでは、対称的なアイテムがビューに表示されます。
Staggered Grid View : 基本的に拡張機能ですGrid View
が、各グリッドのサイズ (高さと幅) が異なります。スタッガード グリッド ビューでは、非対称のアイテムがビューに表示されます。
Staggered Grid View を実装するためのチュートリアル:
ずらしたグリッドレイアウト
- これにより、子が千鳥格子状に配置されます。
- 水平方向と垂直方向のレイアウトだけでなく、子を逆にレイアウトする機能もサポートしています。
- 互い違いのグリッドでは、レイアウトの端にギャップが生じる可能性があります。
- ギャップを避けるために、
StaggeredGridLayoutManager
スパンを個別にオフセットするか、スパン間でアイテムを移動できます。この動作は、 で制御できますsetGapStrategy(int)
。
グリッドレイアウト
- これにより、子が長方形のグリッドに配置されます。
- グリッドは、表示領域をセルに分割する一連の無限に細い線で構成されます。
rowSpec
子は、およびcolumnSpec
レイアウト パラメータで定義されているように、1 つまたは複数の連続したセルを占有します。
ずらしたグリッド レイアウトには、さまざまなサイズの複数の行を持つ複数の列が含まれます。
ヘッダーとフッターを備えた柔軟な列/行ビューが可能で、かなり簡単に実装できるように見えますが、Gradle ユーザーは Eclipse や Ant を使用するユーザーよりも簡単に作業できます。これは、ビューが開発されたEtsy Github アプリでのビューの外観です。
一方、GridLayoutは、子を長方形のグリッドに配置するレイアウトです。
API レベル 14 で導入され、最近サポート ライブラリにバックポートされました。その主な目的は、他のレイアウトでの位置合わせとパフォーマンスの問題を解決することです。GridLayout について詳しく知りたい場合は、このチュートリアルをご覧ください。