悬浮按钮(Floating Action Button,简称FAB)是APP应用中常见的UI元件。它轻盈、优雅、便捷又高效,是Google设计语言中一颗璀璨的明珠。悬浮按钮往往都会独立出现在界面之上,提升整体的导航,拓展页面的功能,使应用的操作更加便捷。

作为Android UI交互中最关键的元素之一,悬浮按钮在用户体验中的地位十分重要。UI上,往往是最色彩大胆最直观的页面元素;在功能上,往往是代表用户在页面上最高频次的操作。悬浮按钮的使用有什么基本准则?有哪些实用用途?我们一起在这篇文章中来看一看。

悬浮按钮的使用原则

A、选择适当的悬浮按钮尺寸

悬浮按钮主要用于促进用户行为,它们通过在UI上浮动的圆圈图标来区分,并且具有包括变形,启动和传送锚点的运动行为。一般有两种尺寸,默认版和迷你版(仅用于与其他界面元素创建视觉连续性)。

默认的尺寸一般为56*56dp,迷你版的尺寸为40*40dp。界面宽度低于460dp时,需要从默认尺寸(56dp)调整至迷你尺寸(40dp)。

B、悬浮按钮只承载正向操作

由于悬浮按钮通常承载的是主要的、有代表性的操作,通常它应该是个积极正向的交互,比如创建、分享、探索等。唯一的悬浮按钮不应该执行破坏性的操作,比如删除、归档。它不应该是非特定的操作,或者是不完整的交互,比如剪切和粘贴是一组组合交互,它们应该存在于菜单栏当中,而非悬浮按钮中。

C、大尺寸屏幕上的悬浮按钮

悬浮按钮在大尺寸的屏幕上可以放置在扩展的APP栏、工具栏或者结构性的元素(前提不阻碍其他元素)和表单的边缘上。需要注意的是,每个页面只能出现一个悬浮按钮,也不要将悬浮按钮与一个页面上的所有元素产生关联,悬浮按钮本身显眼抓人眼球,滥用悬浮按钮会分散用户的注意力。

悬浮按钮的用途

触发器

悬浮按钮可以简单地触发某个动作或在某处导航,常用于触发功能、菜单或导航。

工具栏

悬浮按钮可以在进行点按或滚动操作时变换成工具栏。 工具栏可以包含相关的操作,文本和搜索字段等。当用户通过滚动发出他们有兴趣继续浏览内容的信号,滚动消失的工具栏则大大地节省了屏幕空间,整体的使用体验会非常流畅。

界面变形的枢纽

悬浮按钮可以转换为APP结构的一部分,借助动效延伸到整个屏幕,甚至变为独立的界面,从而成为界面功能切换的动态枢纽。

对于这一块的用法,谷歌Material Design设计规范要求:“变形浮动按钮时,需要以逻辑的方式在开始和结尾的位置转换,不要使用其他元素,并且变形动画应该是可逆的,新的变形页面也可以转换会悬浮按钮。”

触发和扩展一系列操作

除了单一的功能触发外,通过悬浮按钮更常用于触发一系列的操作,通过扩展,用一组相关、常用的悬浮按钮来替代原来的单一交互。常见的形式有拓展按钮,拓展表单等。

作为一般规则,这组拓展出来的按钮不应少于3个,不能多于6个,否则违反了作为悬浮按钮的快速、高效的原则。

悬浮按钮的实践

明确了悬浮按钮的基本设计规范和用途分类后,我们就可以尝试开始动手自己的设计实践了,下面为大家从两个方面的入门提供帮助。

原型设计

如果对悬浮按钮在产品上的运用有了初步的构思,可以通过原型工具Mockplus快速实现原型效果。

Mockplus支持快速设计、快速分享、轻松预览和轻松协作,你可以通过200个组件,8种智能交互组件,仅仅通过鼠标拖拽就实现交互;设计完成后由8种方式供你预览,还支持8种批注工具在线审阅,团队中也能大放光彩。上图的原型例子可以戳这里下载:doc.mockplus.cn/?p=1046

案例欣赏

还没有灵感?不要紧。这里为大家收集了Dribbble和Uplabs上面的一些经典悬浮按钮设计案例,相信会带给你启发。

Navigation at the bottom

作品功能和UI贴切地结合是整体变得出彩,设计中,下拉菜单占据了屏幕的一半,模糊了背景上的元素,突出了表单的重要性。菜单设计得非常简练,所有选项都按照垂直顺序排列,大量的留白保证了文字处于主体地位。

流动的切换动画细节增强了呼吸感,给用户带来了感性细腻的操作反馈。

FAB for User Engagement

这一款FAB显得非常有侵略性。 激活之后没有一点的犹豫,垄断了整个屏幕,占据了主导地位。因为空间的充裕,设计成功地将所有重要环节都包含在内,图标美丽直观,体验强烈而宽敞。在UI方面作者巧妙地设置焦点,带来了愉悦的视觉观感。

Filter Menu

这款作品把FAB作为一种枢纽,使搜索过程更加高效和愉快,为用户提供了更灵活的使用体验。 必要的过滤器选项排列在一个弧形当中,每一个都有一款精心设计的圆形图标。菜单面板也具有非常像按钮本身的圆形形状。 这样一来,组件看上去就和谐了。

总结

悬浮按钮看似简单,但是要在APP设计中,还是要注意基本设计规范、场景和用户体验的。正确使用悬浮按钮,会给你的产品体验带来事半功倍的效果。

干货分享!悬浮按钮设计规范和经典实践相关推荐

  1. 【腾讯Bugly干货分享】Android内存优化总结实践

    本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/2MsEAR9pQfMr1Sfs7cPdWQ 导语 智 ...

  2. 【腾讯bugly干货分享】微信Android热补丁实践演进之路

    为什么80%的码农都做不了架构师?>>>    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://bugly.qq.com/bbs/forum.ph ...

  3. 磨金石教育摄影技能干货分享|优秀摄影欣赏—足球经典名画

    世界杯正在如火如荼的进行,相信通过本次世界杯先进的转播技术,又会诞生一大批新的足球迷.而随着拍摄技术的进步,足球场上的许多精彩瞬间也被更清晰的抓拍下来. 1.c罗的惊讶 这张照片相信看过本届世界杯的朋 ...

  4. 干货分享 | spdk技术简介和一些实践经验

    01 导读 与机械硬盘相比,NVMe-ssd在性能.功耗和密度上都有巨大的优势,并且随着固态存储介质的高速发展,其价格也在大幅下降,这些优势使得NVMe-ssd在分布式存储中使用越来越广泛.由于NVM ...

  5. Netty干货分享:京东京麦的生产级TCP网关技术实践总结

    1.引言 京东的京麦商家后台2014年构建网关,从HTTP网关发展到TCP网关.在2016年重构完成基于Netty4.x+Protobuf3.x实现对接PC和App上下行通信的高可用.高性能.高稳定的 ...

  6. 悬浮按钮app_分享一款网页转App的神器,绝对值得一用

    分享一款制作安卓app的神器:名字叫做Fusion Apps,这款神器的主要作用就是可以制作属于自己的网页APP,这款软件的列害之处是他不光可以通过网页制作app,而且可以自己自定义制作,非常具有实用 ...

  7. lwip协议栈优化_干货分享 | KNI性能优化实践

    友情提示:全文5000多文字,预计阅读时间15分钟 文章源自现网实践对支撑及用户态/内核态网络报文交换场景的认识,欢迎有Linux/FreeBSD内核.网络协议栈.DPDK优化实践经验的同学留言探讨- ...

  8. IM开发干货分享:网易云信IM客户端的聊天消息全文检索技术实践

    1.引言 在IM客户端的使用场景中,基于本地数据的全文检索功能扮演着重要的角色,最常用的比如:查找聊天记录.联系人,就像下图这样. ▲ 微信的聊天记录查找功能 类似于IM中的聊天记录查找.联系人搜索这 ...

  9. 干货分享 | TOP3团队参赛经验:知识与实践融合,在试错中成长

    导读 在短视频如此迅猛发展背后,侵权问题却也愈发严重,由于互联网信息的开放与共享特性,数字产品很容易进行复制.传播.篡改,一些不法分子利用如今越来越简易的视频编辑软件,把原视频篡改后变为一个新视频发布 ...

最新文章

  1. R语言stringr包str_ends函数、str_starts函数起始、结束字符串判断实战
  2. 万物互联的千亿级通信云市场,开发者机会在哪里
  3. pcss评分_GTA5画质设置 N卡画质选项设置指南
  4. JQuery利用css()修改样式后 hover失效的解决办法
  5. Intel Edision入门
  6. 新装机器如何修改IP地址
  7. 探讨NET Core数据进行3DES加密或解密弱密钥问题
  8. Ubuntu抛弃了Untiy转向Gnome,美化之路怎么办?不用怕咱一步一步大变身!
  9. xmlDocument来操作xml文档
  10. imsdroid启动Activity的方式很独特
  11. oracle 省份三个字的,中国所有省份的简称是什么?
  12. 网页复制文字要收费怎么复制
  13. 苹果手机铃声制作教程
  14. 类和对象1:基础学习
  15. 记一次导入环信聊天demo的过程
  16. Mac 上 git 命令出现 xcode-select: error: tool ‘xcodebuild‘ requires Xcode, but active developer direc 错误
  17. spring boot内嵌tomcat优雅的开启apr模式
  18. Cypress-should()常见断言
  19. 攻防世界pwn——forgot
  20. 为什么需要每年重新签发SSL证书?

热门文章

  1. unity-高通增强现实unity制作-动画模型制作
  2. http-flv协议源码实现(可通过网页播放视频)
  3. 利用 java 实现读取 excel 表格中的数据,兼容xls与xlsx以及csv格式
  4. python提取微信聊天语音_Python文字转换语音,让你的文字会「说话」抠脚大汉秒变撒娇萌妹...
  5. axios跨域如何解决
  6. Python检测UDP端口是否正常通信
  7. 微信小程序—调用扫一扫功能,通过扫描二维码连接蓝牙模块
  8. c语言 十进制转化为二进制
  9. java输出钻石_Java程序打印钻石形状
  10. android使用RTMP实现录屏直播推送音视频(已在享学公众号发表)