首页
学习
活动
专区
圈层
工具
发布

在 Flutter 中创建可拖动的浮动操作按钮

Flutter 允许您使用FloatingActionButton小部件添加浮动操作按钮。但是,它不允许您拖动按钮。如果你想让它可拖动怎么办。...本教程有一个示例,说明您需要做什么才能创建浮动操作按钮,只要它位于父小部件内,就可以将其拖动到屏幕周围的任何位置。 创建可拖动的浮动操作按钮 我们将为这样的小部件创建一个类。...下面是用于创建可拖动浮动操作按钮的类。它有一些参数,包括child(要设置为按钮的小部件)、initialOffset(移动前的初始偏移量)和onPressed(单击按钮时调用的回调)。...} }, child: widget.child, ), ); } } 需要处理的另一件事是防止浮动操作按钮脱离父级框...key, child: widget.child, ), ), ); } } 输出: 概括 这就是如何在 Flutter 中创建可拖动的浮动操作按钮

8.8K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    一文彻底搞清楚 Material Design

    为了配合 material desig, android 提供了新的主题、新的配合主题的组件、和自定义阴影和新动画 api 来看看 Android 为了配合 Material Design 都增加了哪些新的控件...Translation Z 是动态的,当创建一个项目,增加一个按钮,当按下按钮会阴影变大了。实际上 Elevation 并没有变化,而是 Translation Z 属性在变化。...动态海拔高度偏移:指的是从静止状态向目标海拔移动的距离(translationZ) 组件的海拔高度: 同一组件在不同的应用中,海拔高度是相同的,比如:不同应用中的浮动操作按钮的海拔是相同的 同一组件在不同的平台和设备中...一般控件的标准海拔 应用栏:4dp 按钮:静止状态 2dp 按下状态:8dp 浮动操作按钮(FAB)静止:6dp 按下:12dp 卡片 静止:2dp 浮动状态:8dp 菜单和子菜单:菜单:8dp...如果根据view大小来生成对应的阴影,就会出现很奇怪的效果,(一个看起来圆形的view展示出的确实一个矩形的阴影)为了解决这个问题,view增加了一个新的描述来指明内容显示的形状,这就是轮廓。

    6K10

    CSS第五天-定位

    进行定位 没有脱标,在页面还占有位置 天生就是给绝对定位当爹用 ---- 绝对定位:absolute 根据最近带有定位(非静态)的祖先元素来定位 子绝父相 脱离标准流,在页面不占有位置 绝对定位,固定定位,浮动...margin: auto ---- 水平方向居中: 文字、行内元素、行内块元素 === 给其父元素添加text-align: center 块级元素 === 给当前元素设置 宽度和margin: 0 auto 浮动元素...文字、行内元素 line-height 等于height 行内块、行高等于高 搭配vertical-align: middle 块级元素、浮动元素 需要去测量 定位元素 === top:50% 50%...translateY(-50%) 行内元素、行内块元素、并列关系的垂直居中对齐 设置vertical-align: middle ---- 垂直的用法: 文本框和表单按钮无法对齐 input和img无法对齐...div中的文本框,文本框无法贴顶问题 div不设高度由img标签撑开,此时img标签下面会存在额外间隙问题 使用line-height和vertical-align: middle 让img标签垂直居中问题

    4.1K40

    EmoBox:我与 CodeBuddy 共创的 Emoji 表情分类小工具

    UI 要有模糊背景、渐变色彩,操作上可以收藏、复制 emoji 等。...表情展示区域则是 3 列的响应式网格,每个 emoji 都包裹在一个拟物风格的圆角卡片中,带有柔和的阴影和悬停时的突出效果。而这些,都是 CodeBuddy 在第一次生成中就完成的。...每当点击一个 emoji 卡片,就会出现一个浮层,展示更大的 emoji、描述文字、复制按钮和一个星标收藏按钮。...同时它还自动配置了 pages.json 路由,并在 uni.scss 中定义了全局变量(如主题色、圆角、阴影等),在多个组件中统一调用,样式可控性大大提升。...同时,顶部导航栏还实现了真正的毛玻璃效果(使用 backdrop-filter: blur(10px)),这点在 UniApp 中通常较难兼容,但 CodeBuddy 用了一种精巧的写法解决了兼容性问题

    35500

    【Android 插件化】VirtualApp 源码分析 ( 目前的 API 现状 | 安装应用源码分析 | 安装按钮执行的操作 | 返回到 HomeActivity 执行的操作 )

    文章目录 一、目前的 API 现状 二、安装应用源码分析 1、安装按钮执行的操作 2、返回到 HomeActivity 执行的操作 一、目前的 API 现状 ---- 下图是 VirtualApp 官方给出的集成...VirtualApp 的步骤 , 这个 API 目前跑不通 , 应该是最新的商业版的使用 API ; 当前的开放源码是 2017 年底的源码 , 好在源码 , 可以从源码中查找 API ; 二、...安装应用源码分析 ---- 1、安装按钮执行的操作 在安装应用界面中的 手机内存 界面中 , 选中要安装的应用 , 点击 " 安装 " 按钮 , 即可安装该应用到 VirtualApp 插件化引擎中 ;...到字符串资源中 , 找 " 安装 " 字符串 ; 查找到在 io.virtualapp.home.ListAppFragment 页面中 , mInstallButton 就是要安装应用的按钮 ,.../app-debug.apk , fastOpen : false 在 adb shell 中查看 , 该应用在 SD 卡根目录 ; 2、返回到 HomeActivity 执行的操作 使用的 MVP

    1.6K20

    【CSS】课程网站横版导航栏 ( 横版导航栏测量及样式 | 代码示例 )

    小盒子中的元素都是垂直居中的 , 可以在大盒子中设置一个行高 , 小盒子自动继承 ; font-xxx , line-xxx , text-xxx , color 等样式可以被子元素继承 ; 该盒子有 2 像素的阴影...顶部 10 像素外边距 */ margin-top: 10px; /* 垂直居中 - 内容高度 = 行高 , 子元素中行高可继承 */ line-height: 60px; /* 设置盒子的阴影...*/ .search button { /* 设置左浮动 使其与表单在同一行显示 */ float: left; /* 按钮宽度 50 像素 */ width: 50px; /* 按钮高度...subnav span { float: right; } /* 配置 Banner 条 课程表 盒子模型样式 */ /* Banner 条右侧 课程表盒子样式 */ .course { /* 设置了浮动不会出现外边距塌陷问题...padding: 0 15px; } /* Banner 条右侧 课程表 无序列表 距离头部有 10 像素间隔 */ .course-bd ul { /* 10 像素内边距 - 使用外边距会出现塌陷的问题

    7.5K30

    15.Flutter学习之路按钮组件系列

    RaisedButton:凸起的按钮,其实就是Material Design风格的Button....FlatButton:扁平化的按钮 OutlineButton:线框按钮 ButtonBar:按钮组 FloatingActionButton:浮动按钮 RaisedButton 属性 描述 textColor...文本颜色 color 按钮颜色 disabledColor 按钮被禁用时的颜色 disabledTextColor 按钮被禁用时的文本颜色 splashColor 点击按钮时水波纹的颜色 highlightColor...点击(长按)按钮后按钮的颜色 elevation 阴影的范围,值越大阴影范围越大 padding 内边距 shape 设置按钮形状 FloatingActionButton 属性 描述 child...子视图,一般为Icon tooltip FAB被长按时显示,也是无障碍功能 backgroundColor 背景颜色 elevation 未点击时的阴影 highlightElevation 点击时阴影值

    83410

    掌握这 7 个 CSS 技巧,代码效率秒提升

    为了解决这一问题,可以使用 CSS 的 resize 属性,让输入框支持大小调整,同时通过 overflow 确保内容不会溢出容器。...新拟态设计 业务场景:柔和的交互按钮 新拟态设计是近年来的热门趋势,它通过模拟物体的光影效果,营造一种“柔软浮动”的视觉效果,非常适合按钮、卡片、开关等 UI 元素。...第二组阴影 -5px -5px 15px #ffffff:浅色阴影,放置在左上角,模拟光线打到右下角时的高光。...通过同时定义两种阴影,制造出浮动效果: border-radius 通过圆角让元素看起来更柔和,模拟类似按钮的形状。...总结:新拟态设计适用于用户操作的按钮、卡片等,能够提升视觉体验,让页面看起来更加现代。 3. 毛玻璃效果 业务场景:登录弹窗或信息卡片 毛玻璃效果能让元素看起来半透明,同时模糊背景,提升整体设计质感。

    73210

    HarmonyOS应用开发实战 | ArkTS按钮控件使用指南

    (大、中、小、自定义) 按钮状态管理(正常、禁用、加载中) ✨ 渐变色和阴影效果 自定义形状按钮(圆形、胶囊、方形) 动画效果和交互反馈 按钮组和切换按钮 ✨...}) } .width('100%') .justifyContent(FlexAlign.SpaceEvenly) // 浮动操作按钮...、霓虹效果 形状按钮:圆形、胶囊、方形、菱形等 交互按钮:标签页、浮动操作、确认按钮组 ✅ 功能验证 基础功能:点击各种按钮,查看控制台输出 状态切换:测试喜欢、关注按钮的状态变化...44dp最小触摸目标原则 颜色搭配:使用品牌色系,保持视觉一致性 ⚡ 性能优化:避免过度使用阴影和渐变效果 交互反馈:使用stateEffect提供按压反馈 常见问题 按钮点击无响应...如果你有任何问题或建议,欢迎在评论区留言交流。

    24710

    如何为你的网站添加一个优雅的在线客服聊天组件

    初始化与配置 组件采用简单的JSON配置方式: CHAT_WIDGET.initialize({ API_URL: "https://your-api-endpoint.com", AGENT_ID...视觉呈现 我采用了Material Design风格的设计元素: 悬浮按钮采用圆形设计,符合FAB(浮动操作按钮)规范 聊天窗口有柔和的阴影和圆角 使用蓝色作为主色调,传递专业和可信赖的感觉...自动打开​​:可配置3秒后自动弹出(适合营销页面) ​​新消息提醒​​:未读消息会显示小红点计数 ​​标题闪烁​​:当窗口失去焦点时,通过标题栏闪烁提醒用户 ​​平滑过渡​​:所有显示/隐藏操作都有动画效果...跨窗口通信 组件使用postMessage API实现与iframe内容的通信: window.addEventListener('message', (e) => { if (!...: "你的客服API地址", AGENT_ID: "客服ID" }); 一个好的客服聊天组件应该是"隐形"的 - 当用户不需要时几乎感觉不到它的存在,但当他们需要帮助时又能立即出现。

    37710
    领券