美文网首页Flutter教学
Flutter(85):Draggable组件之Draggabl

Flutter(85):Draggable组件之Draggabl

作者: starryxp | 来源:发表于2020-11-30 19:56 被阅读0次

    Flutter教学目录持续更新中

    Github源代码持续更新中

    1.Draggable介绍

    拖拽组件

    2.Draggable属性

    • child:子组件,未进行拖拽时显示
    • feedback:跟随拖拽的组件
    • data:用于对DragTarget传递data
    • axis:Axis 拖拽方向,可以设置只能横向或者纵向拖拽
    • childWhenDragging:拖拽时child子组件显示样式
    • feedbackOffset = Offset.zero:
    • dragAnchor = DragAnchor.child:拖拽的锚地位置
    • ignoringFeedbackSemantics = true:当子child和feedback为同一个Widget时,可以设为false配合GlobalKey确保是同一个Widget 减少绘制
    • affinity:此部件与其它手势的竞争方式 在非affinity方向上不响应拖动事件,一般用于在滚动组件
    • maxSimultaneousDrags:同时支持拖动多少个点
    • onDragStarted:拖动开始时调用
    • onDraggableCanceled:在没有被DragTarget接受的情况下松开draggable时调用
    • onDragEnd:拖动结束时调用
    • onDragCompleted:Draggable被删除并被DragTarget接受时调用
      DragTarget组件下一节再讲,这是可以用来接受feedback的组件�

    3.使用

          body: Center(
            child: Draggable(
              child: Container(
                width: 100,
                height: 100,
                color: Colors.blue,
              ),
              feedback: Container(
                color: Colors.red,
                width: 100,
                height: 100,
              ),
              childWhenDragging: Container(
                color: Colors.amber,
                width: 100,
                height: 100,
              ),
              feedbackOffset: Offset(0, 10),
              dragAnchor: DragAnchor.child,
              onDragStarted: () {
                print("onDragStarted");
              },
              onDragEnd: (DraggableDetails details) {
                print("onDragEnd : $details");
              },
              onDraggableCanceled: (Velocity velocity, Offset offset) {
                print('onDraggableCanceled velocity:$velocity,offset:$offset');
              },
              onDragCompleted: () {
                print('onDragCompleted');
              },
            ),
          ),�
    
    未拖拽.png 拖拽中.png

    下一节:Draggable组件之DragTarget

    Flutter(86):Draggable组件之DragTarget

    Flutter教学目录持续更新中

    Github源代码持续更新中

    相关文章

      网友评论

        本文标题:Flutter(85):Draggable组件之Draggabl

        本文链接:https://www.haomeiwen.com/subject/onddwktx.html