当你需要展示一段持续提示,却又不想打断用户操。用 Dialog 弹窗打断用户操,Toast 又不够明显,Snackbar 自动消失,显不符合要求。么不妨就来跟我一认识下能满该要求的 Banner 控件吧。
这里的 Banner 并非是我们在电商、视频上见的焦点图,而是 Material design 规范中推荐使的一种示控件,我们可将译为横幅示。
Banner 控件常用于轻度干扰消息提示,该消息会用户形成视觉干扰不会阻断前操作,用户可以选择忽略它或稍后再进操作。
上篇文章为大家讲比 Toast 更用的 Snackbar,Banner 与 Snackbar 一样同属提示控件,但二者的不同之处在:
- 位不:Snackbar 常显示在页底部,Banner 常显示在页顶部。
- 干扰度更强:Snackbar 自动消失,Banner 则固定展示,除非达成使其消失的必要条件。
△ 左为Snackbar,右为Banner
Banner 与另个大名鼎鼎提示控件 Dialog(弹窗)比,者不处在于:
- 视觉表现更弱:Dialog 显示时会深色遮挡背景,并中显示在页面中央,使户得将注意全集中于 Dialog 之上;Banner 显示时仅占据页面顶,形成的视觉干扰。
- 干扰度更弱:Dialog 持续期会禁止用户进其它页操作,而 Banner 持续期则不会影响用户进其它操作。
△ 左为Dialog,右为Banner
因此综上述,个示控件的干扰从强到弱序可视为:Dialog>Banner>Snackbar。
那么我们需要予用户些长时显示,不需打断用户操作提示时,Banner 绝是你最佳选择,此 Banner 可以兼容 1-2 个要操作,也是兼具提示与操作功能好帮手。
下面就由我来为你详 Banner 控件的一特和玩法吧。
Banner 的样式以根据设备的宽度进行适改变。
1. 窄屏样式
注意控文案字数,持单行展示,按钮展示不下时允许折行显示。
2. 宽屏样
注意控制文案数,保持单展示。
1. 显示
Banner 通常在屏幕加载内容出现,加载后出现的 Banner 会从顶部向下滑出显示。
2. 消失
Banner 必须保持显示在屏幕上,直定义消失逻辑被足才会消失。
当页有 Top app bar 或 Search bar ,显示在其下方(不可发生重叠)。
当页无 Top app bar 或 Search bar ,显示在 Status bar 下方(不可发生重叠)。
可设置 Banner 层级高于页面内,Banner 从顶部向下滑出显示时会遮挡下方内;当页面内向滑动时,Banner 会固顶部。
可设置 Banner 与页面内同一层级,Banner 从顶部向下滑出显示时会将内向下推移;当页面内向滑动时,Banner 也会随滑出屏幕(不会消失)。
当页使用 Navigation drawer 时,Banner 会被展的抽屉导航遮挡。
当承载 2 个操时,设置对应操按钮为点击热区。
仅承载 1 个操时,设置对应操按钮为点击热区,也设置整行 banner 为点击热区(应用内需持互统一)。
- 不要同展示多个 banner,每次仅展示 1 个;
- 按钮要使 text button 之外样式,因为会过强;
- 不要使用 2 个以上按钮,若确实需要,请考虑使用 Dialogs;
- 按钮文案不要使用「忽略」或「取消」文案,取消文案应当与信息内容相匹。
Teambition 利 Banner 在首页进行版本示,户可点击查看版本更容,可择稍后查看或置之。
微信同样利 Banner 在消息列表页告知络异状态,户可点击查看详细问题,可择查看本地已缓存的消息容,在络恢复正时自消失。
注作者的微信公众号:「愚者笔记」