537483687468 2021-06-26 21:17 采纳率: 25%
浏览 240

flutter移植DragAbleGridView长按图标实现拖拽、删除功能,移植代码后报错!

代码如下:

static commonFuctionsEdit(BuildContext context) {

    DragAbleGridViewState dragAbleGridViewState = new DragAbleGridViewState();

    List<ItemBin> itemBins = new List(); 

    var editSwitchController=  EditSwitchController();

    final List<String> icons1 = [

      'assets/images/gongsi_kaoqinguanli3.png',

      'assets/images/gongsi_xinchouguanli3.png',

      'assets/images/gongsi_zhaopinguanli3.png',

      'assets/images/gongsi_renshidangan3.png',

      'assets/images/gongsi_videomeeting.png',

      'assets/images/gongsi_wanxingxuetang3.png',

      'assets/images/gongsi_yunyingbaogao3.png'

    ];

     

    icons1.forEach((value) {

      itemBins.add(new ItemBin(value));

      //print(value);

    });

  

    dragAbleGridViewState.initState();

    if(null != editSwitchController){

      editSwitchController.editStateChanged();

    }

 

        return Scaffold(

           body: editSwitchController != null ? DragAbleGridView(

            mainAxisSpacing:10.0,

            crossAxisSpacing:10.0,

            childAspectRatio:1.0,

            crossAxisCount: 4,

            itemBins: itemBins,

            editSwitchController:editSwitchController,

            isOpenDragAble: true,   //长按实现拖动的功能

            animationDuration: 300, //milliseconds

            longPressDuration: 800, //milliseconds

            deleteIcon: Image.asset("assets/images/close.png",width: 15.0 ,height: 15.0 ),

              //通过调用delete监听器实现对items的删除

            deleteIconClickListener: (index) {},

            child: (int position){

              return Container(

                child: Image.asset(

                    itemBins[position].data,

                    width: 50.0,

                    height: 50.0,

                ),

              );

            },

            // child: ,

          ):Container(),

      );

      //  );

    //   }

    // ); 

  }

 

 

 

 

 

我也判空了啊,

大佬们看得出原因嘛,一直磨着。。。。。。。。

  • 写回答

1条回答 默认 最新

  • 不担心 2023-06-10 02:12
    关注

    要么就是这句有问题
    if(null != editSwitchController){

      editSwitchController.editStateChanged();
    
    }
    

    换中写法试试,比如
    if(editSwitchController==null){

    } else {
    

    editSwitchController.editStateChanged();
    }

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器