簡體   English   中英

如何設置具有 GridView 孩子的 Container() 高度? flutter

[英]how to set Container() height which has GridView child?? flutter

我正在嘗試制作 gif 圖片庫。 我想用容器包裝 gridview 但容器需要設置高度。 如何相對設置 Container() 的高度? 我想做 gridview.items 增長,容器高度也增長。

在此處輸入圖像描述

紅線是我設置的當前容器高度。

            Container(
              margin: EdgeInsets.only(top: 10),
              padding: EdgeInsets.symmetric(horizontal: 10),
              height: 1000,
              width: double.infinity,
              child: GridView.builder(
                  physics: NeverScrollableScrollPhysics(),
                  itemCount: 6,
                  gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
                    crossAxisCount: 3,
//                      childAspectRatio: 3 / 2,
//                      crossAxisSpacing: 10.0,
//                      mainAxisSpacing: 10.0,
                  ),
                  itemBuilder: (context, index) => ChangeNotifierProvider.value(
                        value: videos[index],
                        child: VideoGifItem(),
                      )),
            ),

如果您需要GridView小部件根據其擁有的項目數量占用空間。

您可以將GridView小部件的shinkWrap屬性設置為true

我以您的代碼為例添加了一個演示:

Container(
        margin: EdgeInsets.only(top: 10),
        padding: EdgeInsets.symmetric(horizontal: 10),
        width: double.infinity,
        child: GridView.builder(
          // set the shrinkWrap property to true
          shrinkWrap: true, // new line
          physics: NeverScrollableScrollPhysics(),
          itemCount: 6,
          gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
            crossAxisCount: 3,
//                      childAspectRatio: 3 / 2,
//                      crossAxisSpacing: 10.0,
//                      mainAxisSpacing: 10.0,
          ),
          itemBuilder: (context, index) => ChangeNotifierProvider.value(
            value: videos[index],
            child: VideoGifItem(),
          ),
        ),
      ),

暫無
暫無

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

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