是否可以将对话框中的Draggable小部件移动到后台的DragTarget上?

时间:2020-04-06 19:49:38

标签: flutter flutter-layout draggable

我对Flutter还是很陌生,但我仍在努力理解类与小部件之间的交互。对于我当前的项目,我要实现的目标是“拖动”对话框上的Draggable,然后将其从对话框中移到对话框后面的DragTarget上。

当前,我有三个类,DragIconComponent,MenuComponent和MainPage。该对话框位于MenuComponent中。我知道这是一种跨类处理可拖动对象的非常不合常规的方法,到目前为止,我一直在尝试执行任何操作,因为DragTarget被对话框的background(?)阻止了。

这是我的Draggable小部件所在的位置:

  if(position == 0 || position == numlist.size()-1){

       // I assume the list name is numlist

         holder.asterisk.setVisibility(View.GONE);

      // I assume the item name is asterisk                                          

  }

我打算做的是将Draggable小部件移到主页上:

class DragIconComponentState extends State<DragIconComponent> {

  Widget _menuIcon() {
    return Container(
       child: Image.asset(...)
    );
  }

  Widget _disabledMenuIcon() {
    return Container(
       child: Image.asset(...) 
    );
  }

  @override
  Widget build(BuildContext context) {
    return Draggable(
        child: _menuIcon(),
      ),
      feedback: _menuIcon(),
      childWhenDragging: _disabledMenuIcon(),
      onDragCompleted: () {
        Navigator.of(context, rootNavigator: true).pop();
      },      
    );
  }
}

我想知道是否有可能实现我想做的事情,如果不能,也许有一种解决方法可以达到相同的效果?

谢谢。

0 个答案:

没有答案