android - 在 Flutter GridView 构建器中添加自定义项
问题描述
我正在尝试在 gridview.builder 中添加一个新的自定义按钮。在我的 gridview 中,我有 5 个项目,请看图片
请看我的简单代码。
GridView.builder(
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 3),
itemCount: _categoryList.length,
itemBuilder: (context, index) {
if (_categoryList.length != 0) {
return Padding(
padding: const EdgeInsets.all(8.0),
child: CircleAvatar(
backgroundColor: Colors.transparent,
backgroundImage: NetworkImage(_categoryList[index].icon,),
),
);
} else
return Container();
},
),
解决方案
在孩子身上,您可以要求 index == 5 并显示一个 Button-Widget 而不是 Photo-List-Item:
GridView.builder(
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 3),
itemCount: _categoryList.length,
itemBuilder: (context, index) {
if (_categoryList.length != 0) {
return Padding(
padding: const EdgeInsets.all(8.0),
child: index == 5 ? myButton() : CircleAvatar(
backgroundColor: Colors.transparent,
backgroundImage: NetworkImage(_categoryList[index].icon,),
),
);
} else
return Container();
},
),
推荐阅读
- ruby - 在不准确的情况下获得回报
- javascript - 用户计算机中本地文件的绝对路径
- java - Gauge - 在使用 -DinParallel=true 对 csv 中的每一行运行规范之前
- c++ - 如何将数字运算符作为参数传递?
- python - 在 Python3.9 中导入 pg 出错
- java - 使用 JDBC 在一对多中获取“多”
- javascript - 为什么我的不和谐机器人在 setInterval 和 setTimeout 函数内部时从 mongoDB 返回结果未定义?
- javascript - reactjs - 如何在javascript中添加点击事件监听器?
- uproot - 尴尬的数组 ak.unzip 行为
- nullreferenceexception - Azure Bot Framework Echo Bot NullReferenceException