弹窗控件在设计体系中是非常细节且复杂的,因为覆盖的设计场景非常多。那在实际APP设计中需要如何去注意使用它呢?
首先就从弹窗是如何发挥自己的作用开始讲解吧!弹窗:是指当用户在页面操作后,系统会给予反馈、提示、引导用户的一种设计控件。在操作中,系统需要针对用户不同的操作场景给予合理的信息反馈,提示用户当前操作的一个结果是怎么样了,或是强制用户去做一些操作决定自己下一步是需要干嘛!
其次根据是否强制用户的操作的场景,可以将弹窗分为模态弹窗和非模态弹窗两种;
强交互形式,打断用户当前操作行为,传递给用户引导信息,用户必须进行操作回应,才能进行后续流程。模态弹窗的主要类型为:包含:Dialog/Alerts(警告框、对话框);ActionSheet(动作菜单/动作面板/行动列表)、ActionView(视图菜单);Popover/Popup/Filter/Tips(气泡、弹出菜单、筛选、引导框)
Dialog/Alerts(警告框、对话框)
这种弹窗样式在安卓系统中将它成为警示框,英文为"Dialog",苹果系统中将它成为对话框,英文为"Alerts",这种弹窗样式,引导用户对于重要信息的操作,强制性比较高。如下是苹果的Alerts(对话框)实例
设计注意
Alert位置置于屏幕中心,告知用户特定的任务和重要信息,并请求用户进行操作反馈。使用场合广泛,易获取用户注意力,干扰度/警示性最高。此类的设计样式需要克制,不滥用尽可能少用,Alert通常用于紧急不可逆场景的操作提示,需要用户确认该信息。标题不超过2行,描述内容不超过3行;按钮最多竖排3个,横排2个,建议使用文字按钮;一般用户最可能点击的按钮(主操作)放在右侧,取消按钮始终放在左侧。
应用场景
运营活动、版本升级、功能操作提示(确认、退出、删除、清空)、权限获取等,如下图:
ActionSheet(动作栏)、ActionView(视图菜单)
ActionSheet是支持连续弹出的,例如第一个ActionSheet中选择删除,第二个ActionSheet中确认删除。此外,如果删除后的对系统或用户影响比较大,应该使用Alert。警示强度Alert>ActionSheet
Popover/Popup/Filter/Tips(气泡、弹出菜单、筛选、引导框)
浮层也属于弹窗的一种,主要样式可以细分为Popover/Popup/Filter/Tips(气泡、弹出菜单、筛选、引导框)等四种样式。这里通过参考了支付宝APP的控件分类。案例中新增"Filter/Tips"这两个形式。
Popover(气泡)设计注意:
popover很少强制用户进行操作,是否设置遮罩取决于控件的重要属性。
一般用于快捷功能的展开和收起。如下图:
Popup(弹出菜单)
Filter(筛选)
一般用于筛选区域,针对不同维度关键词进行快捷搜索。如下图:
Tips(引导框)
Tips相对于popover,用户操作强制比较高,是否设置遮罩同样取决于设计场景的重要性。
一般多用于app启动之后的功能引导。如下图:
弱交互形式,不打断用户当前操作行为,在页面会给用户一些提示,用户可以忽略或者选择性操作。非模态弹窗的主要类型为:包含:Toast/HUD(提示框);Snackbar(底部弹窗);Topbar(顶部弹窗)
Toast/HUD(提示框)
这个控件Toast起源于MaterialDesign,随着Toast的广泛应用,它的定义也变得越来越模糊,随着系统更多新场景的出现,控件定义也在不断变化,类似半透明具有提示型的控件设计都可定义为Toast。目前iOS系统中也有很多页面场景使用这种轻量化的Toast样式。HUD是iOS系统独有(iOS的音量调节),无法被第三方应用调用。
常用于加载刷新中、已完成、失败等结果提示。
Snackbar(底部弹窗)
多用于撤销操作和功能引导、支持用户操作主动滑动关闭。如下图
Topbar(顶部弹窗)
Topbar是根据已有的app的设计样式总结的,有点类似Snackbar,但是提示的程度比较弱,一般用于低频的功能操作引导。