Flutter 自定义回调

废话不多说上代码

class NeedsWidget {
 static Widget NeedsWidgetItem(context, mData,
     {Function(int id, int type,{String  auditContent})? onClick}) {

    return Row(
          mainAxisAlignment: MainAxisAlignment.end,
          children: [
            InkWell(
              child: Container(
                width: 160.w,
                height: 64.w,
                alignment: Alignment.center,
                decoration: BoxDecoration(
                    color: Colors.white,
                    border: Border.all(color: Color(0xfff19149), width: 1.w),
                    borderRadius: BorderRadius.circular(32.r)),
                child: EmptyWidget.cText('删除需求', 0xFFf19149, null, 26.sp),
              ),
              onTap: () {
                onClick(map['id'], 0);
              },
            ),
            SizedBox(width: 16.w),
            InkWell(
              child: Container(
                width: 160.w,
                height: 64.w,
                margin: EdgeInsets.only(right: 33.w),
                alignment: Alignment.center,
                decoration: BoxDecoration(
                    color: Colors.white,
                    border: Border.all(color: Color(0xffeeeeee), width: 1.w),
                    borderRadius: BorderRadius.circular(32.r)),
                child: EmptyWidget.cText('修改发布', 0xFF999999, null, 26.sp),
              ),
              onTap: () {
                onClick(map['id'], 1);
              },
            )
          ],
        );
}

 调用

return ListView.builder(
          itemCount: mData.length,
          itemBuilder: (BuildContext context, int index) {
            return InkWell(
                onTap: () {
                
                },
                    ///list条目中按钮点击事件
                child: NeedsWidget.NeedsWidgetItem(
                  context,
                  mData[index],
                  onClick: onClick,
                ));
});
  

   //回调方法
  onClick(int id, type,{auditContent}) async {
    这里出来你的逻辑,分离了widget中只写布局,
  }

觉得有帮助点个赞!!!! 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值