簡體   English   中英

如何根據 Flutter 中的寬度調整 GridView 的 crossAxisCount?

[英]How to adapt crossAxisCount of GridView based on its width in Flutter?

根據 Flutter 的寬度調整 GridView 的列數 (crossAxisCount) 的最佳做法是什么?

也許我可以通過參考 HTML 更好地解釋預期的行為:

  • 我創建了 6 個框(例如 DIV),每個框的寬度為 200 像素(高度相同)。
  • (a) 如果圍繞這些框的元素的寬度為 400 像素,它會自動在 3 行中每行顯示 2 個框。
  • (b) 如果圍繞這些框的元素的寬度為 700 像素,它會自動在 2 行中每行顯示 3 個框。

使用包裹。 它可以將盡可能多的渲染框放入一行,然后換行到下一行。 (以前是評論,但看起來像答案!)

我這樣做如下。 你可以試試..

  int getItemCountPerRow(BuildContext context) {
    double minTileWidth = 200; //in your case
    double availableWidth = MediaQuery.of(context).size.width;
    
    int i = availableWidth ~/ minTileWidth;
    return i;

  }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM