本文主要介绍我为桌面和 Web 设计的一个超级秘密 Flutter 项目使用了画布和可拖动节点界面。本教程将展示我如何使用堆栈来使用小部件完成可拖动功能

如下所示。

我们将动态地将项目添加到堆栈中并区分它们,我将使用 RandomColor 类型器。所以我们必须添加那个包。

random_color:

然后我们可以创建包含我们的堆栈的 HomeView

class HomeView extends StatefulWidget {@override_HomeViewState createState() => _HomeViewState();
}class _HomeViewState extends State<HomeView> {List<Widget> movableItems = [];@overrideWidget build(BuildContext context) {return Scaffold(body: Stack(children: movableItems,));}
}

功能非常简单。我们将有一个MoveableStackItem有状态的小部件。它会跟踪自己的位置和颜色。颜色在初始化时设置,位置通过 更新GestureDetector

class _MoveableStackItemState extends State<MoveableStackItem> {double xPosition = 0;double yPosition = 0;Color color;@overridevoid initState() {color = RandomColor().randomColor();super.initState();}@overrideWidget build(BuildContext context) {return Positioned(top: yPosition,left: xPosition,child: GestureDetector(onPanUpdate: (tapInfo) {setState(() {xPosition += tapInfo.delta.dx;yPosition += tapInfo.delta.dy;});},child: Container(width: 150,height: 150,color: color,),),);}
}

最后要做的是向MoveableStackItem视图添加一个新的。我们将通过 HomeView 中的浮动操作按钮来实现。

 return Scaffold(floatingActionButton: FloatingActionButton(onPressed: () {setState(() {movableItems.add(MoveableStackItem());});},),body: Stack(children: movableItems,));

就是这样。现在您的视图上有一个可移动的Stack。

flutter创建可移动的stack小部件相关推荐

  1. wordpress创建_十分钟即可在WordPress中创建动态小部件

    wordpress创建 Have you tried to find functionality for a specific purpose in WordPress but failed to f ...

  2. 变分模态分解_Android小部件示例中的模态对话框(弹出)

    变分模态分解 在此示例中,我们将看到如何在主屏幕中创建一个可以打开弹出对话框的Android小部件. 如您所知,Android Widgets是小型应用程序,基本上可以做两件事. 按下时启动新的活动, ...

  3. Android应用小工具(窗口小部件)

    Widget是可以在其他应用程序被嵌入和接收定期更新的微型应用程序视图. 在创建一个应用程序窗口小部件,需要满足以下条件: AppWidgetProviderInfo--描述元数据为应用窗口小部件,如 ...

  4. Android AppWidget(桌面小部件)

    使用Android Studio 开发桌面小部件,闲来无事,自己动手做一个 AppWidget是应用程序窗口小部件(Widget)是微型的应用程序视图 官方文档链接:http://www.androi ...

  5. 如何在Android的主屏幕上添加设置快捷方式小部件

    You probably have some settings that you access on a regular basis. Instead of going into the Settin ...

  6. [flutter专题]详解AppBar小部件

    大家好,我是坚果,公众号"坚果前端" AppBar 应用栏是各种应用程序中最常用的组件之一.它可用于容纳搜索字段.以及在页面之间导航的按钮,或者只是页面标题.由于它是一个如此常用的 ...

  7. wxWidgets:创建自定义小部件

    wxWidgets:创建自定义小部件 编写自定义小部件 编写通用小部件 编写本机小部件 通常在 wxDialogs 和 wxFrames 中结合现有的Controls控件就足以完成任何 GUI 设计. ...

  8. OpenCV创建小部件Creating Widgets

    OpenCV创建小部件 创建小部件 目标 代码 解释 结果 创建小部件 目标 在本教程中,您将学习如何 使用WidgetAccessor和VTK创建自己的窗口小部件. 在可视化窗口中显示您的窗口小部件 ...

  9. 创建自定义Widgets小部件扩展

    创建自定义Widgets小部件扩展 创建自定义Widgets小部件扩展 扩展名类型 创建一个扩展 向Qt Designer公开扩展 创建扩展工厂 访问Qt Designer的扩展管理器 创建自定义Wi ...

最新文章

  1. Oracle ASM 详解 收藏
  2. caffe FCN网络的训练——以SIFT-Flow 数据集为例
  3. 蓝牙nrf52832的架构
  4. 错误/异常:java.io.FileNotFoundException: .\src\db.properties (系统找不到指定的路径。);的解决方法...
  5. 实例60:python
  6. Java基础常见的面试题
  7. Extjs创建多个application实现多模块MVC动态加载。。
  8. 微信公众平台开发(112) 微信卡券
  9. ubuntu 命令行 ocr 双层pdf OCRmyPDF
  10. 浏览器怎么导入导出|删除书签,方法步骤来咯
  11. 看英语书记录的单词-5
  12. 秦九韶多项式运算时间java_多项式计算之秦九韶算法
  13. k8s1.23 Ingress-nginx实操
  14. mac命令行更新gradle
  15. python中类似matlab的tic,toc程序自我实现
  16. 蓝牙技术|2028 年智能音箱市场将达290亿美元,伦茨科技推出(Alexa,Echo音箱)亚马逊App直连幻彩灯方案
  17. 基于python高校学生管理系统
  18. 再论推翻百年集论的真扩集定理(2165字)
  19. 计算机科学概论918
  20. Delphi Xe 下载(破解)

热门文章

  1. java性能分析与问题定位 实战
  2. java日志统计_Java实现蓝桥杯日志统计
  3. python集合与字典区别_Python中的字典与集合
  4. svpwm矢量控制电机相电压波形_如何深入理解SVPWM?
  5. matplotlib 横坐标少了一个点_刘洲成点赞说马苏拍戏少视频
  6. 项目日报模板_雄东片区A单元安置房项目首栋住宅楼主体结构封顶
  7. 基于HTML在线考试系统开题报告,基于JSP的在线考试系统 开题报告.doc
  8. 为什么剩余数不能相加_为什么各位之和是 3 的倍数的数能被 3 整除?
  9. java的圆周率_java学习日记,圆周率的打印
  10. 寻宝天行服务器维护中,你好。我的电脑寻宝天行网站上不去,其他网址都可以上,都好几天了。要么就无访问,要么跳出个502什么的...