2017 Material Design完整中文版:第五章节《组件》 第一部分

用户头像
亚洲/学生/9年前/591浏览
2017 Material Design完整中文版:第五章节《组件》 第一部分
用户头像
D27_

【站酷首发】10大章79小节重译!半年心血只为让更多人正确认识、学习MD。由于单篇文章字数限制,全文将分为N篇文章陆续发布。

第五章节《组件》  

一、底部导航(Bottom navigation)  

底部导航栏能够方便用户在各顶级视图之间进行快速定位和切换操作。


点击底部导航中的icon能够快速切换到相关视图或刷新当前视图。


底部导航主要用于移动端。要在桌面端实现类似效果可以使用侧边导航。


用法

  • 适用于拥有三到五个顶级入口导航选项的应用

  • 需要各入口选项间能够直接、快速的跳转


颜色

可以使用应用的主色作为选中状态(active)下的icon颜色。如果底部导航栏已经存在颜色,那么icon可选用黑色或白色。


尺寸说明

  • 每一个操作区域的宽度:整个视图的宽度除以操作数(即入口导航选项数),其中最大是168dp和最小80dp。

  • 高:56dp

  • Icon:24 x 24dp


0dec59575791a8012193a35ad0ca.jpg

- 用法  

底部导航让用户能够在应用各顶级入口间快速跳转。是专门为移动端设计的导航方式。


如果是更大的屏幕,如桌面端,可以使用侧边导航来达到这种效果。例如,默认状态的侧边导航栏为缩略显示方式(只显示icon)。


07fc595757a1a8012193a34d15a2.jpg

移动端:底部导航栏


3000595757aba8012193a37805c7.jpg

平板或桌面端:侧边导航栏


什么时候使用底部导航

底部导航适用于:

  • 适用于拥有三到五个相同优先级入口导航选项的应用(替代方案:永久性抽屉式导航

  • 不受界面层级影响,各顶级入口之间可直接跳转。(替代方案:tabs )

    865d595757b7a8012193a3d55a36.jpg

    可行

    底部导航栏适用于拥有三到五个顶级入口导航选项的应用。


    ad5b595757c7a8012193a39da5d0.jpg

    不可行

    少于三个顶级入口导航选项的情况下建议使用tabs。


    如果你的应用拥有超过5个顶级入口导航选项的话,建议将多出的入口选项放置在其他位置,如抽屉式导航中。

    e618595757d0a8012193a384f9eb.jpg

    可行


    bc5f595757d8a8012193a36a095f.jpg

    不可行

    底部导航栏中不要出现可滚动操作。


    6c1f595757e0a8012193a3653a8c.jpg

    可行

    超过5个顶级入口导航选项的话,底部导航只展示优先级别相对高的5个选项,而多出的入口选项将放置在其他位置。


    f4ce595757e7a8012193a35555a4.jpg

    不可行

    底部导航中不要超过5个顶级入口选项,因为离太近人类愚蠢的拇指容易误按。


    底部导航和tabs

    特别注意应用中底部导航和tabs结合使用的情况,两者相结合容易导致用户在使用期间产生困惑。比如,在底部导航和tabs之间来回切换容易导致不同过渡动效相互出现混淆用户操作的情况。


    - 样式  

    Icons和文本

    因为底部导航中的入口导航选项是以icon的视觉形式呈现,所以icon应能够清晰向用户传达导航入口的信息。


    入口导航选项的样式需要遵循以下规则:

    • 某视图获取焦点(view is in focus)时,显示该视图的icon和文本标签

    • 如果底部导航只有三个入口导航选项,那就将icon和文本标签都显示出来

    • 如果底部导航有四或五个入口导航选项,那没有选中的选项只显示icon


    颜色

    当前被选中的入口导航选项(包括icon和文本标签)可使用该应用的主色来表示。

    4e06595757f1a8012193a3899c40.jpg

    可行

    视图获取焦点时,其icon和文本标签都赋予了应用主色,以此来表示现在所处视图。


    16ff595757f9a8012193a3973400.jpg

    不可行

    避免各选项的icon和文本标签之间使用不同的颜色。


    如果底部导航栏本身有颜色的话,那么被选中选项的icon和文本标签使用黑色或白色表示。


    16fe59575804a8012193a3fd2cef.jpg

    可行

    如果底部导航栏本身有颜色的话,那么被选中选项的icon和文本标签使用黑色或白色表示。


    cc335957580ca8012193a35ea900.jpg

    不可行

    避免在有颜色的底部导航栏中出现使用不同颜色的选项。


    文本标签

    使用简洁明了的文本标签去描述底部导航栏中选项的icon。避免使用长文本标签。

    f5d059575814a8012193a3b07385.jpg

    可行

    简洁明了的文本标签


    b44a5957581da8012193a359d915.jpg

    不可行

    避免使用换行的文本标签


    216c59575825a8012193a36adb89.jpg

    避免使用带省略的文本标签


    746d5957582ea8012193a352a4da.jpg

    字体大小必须一致,避免为了能塞下而缩小字体的情况


    - 行为  

    点击底部导航中的icon能够快速切换到相关视图或刷新当前视图。


    底部导航栏中的选项必须是导航到某个目标视图,不能是打开某个菜单或弹窗。


    在Android中,后退按钮不能在底部导航栏各入口视图间使用。


    c6e159575861a8012193a3842dcb.jpg

    点击已选中的选项,视图会跳至顶部


    0e6159575875a8012193a39b0364.jpg

    来回切换选项可以刷新页面状态


    来回滚动屏幕可以显现和隐藏底部导航栏:

    • 向下滚动屏幕可以隐藏底部导航栏

    • 反之显现底部导航栏

    a4a959575883a8012193a3ea9a35.jpg

    来回滚动屏幕可以显现和隐藏底部导航栏,这样做能增加用户阅读内容的沉浸体验。


    e6195957588da8012193a3e9642d.jpg

    不管在多深层级视图下阅览,来回切换入口导航选项后还是会刷新重置回入口视图。


    2cea5957589ca8012193a3e4b9df.jpg

    切换选项时使用过渡动效。


    bf31595758a5a8012193a3fb6892.jpg

    视图切换避免使用横向位移动效


    - 尺寸说明  

    固定的底部导航栏

    每个操作区域的宽度:

    整个视图的宽度 / 操作数(即入口导航选项数)

    举个例子:如果视图宽度为360dp,底部导航栏存在3个入口导航选项,那么每个操作区域应为120dp宽。


    桌面端或者大屏环境

    可选择最大操作区域宽度。


    ad78595758b4a8012193a390a4cd.jpg

    移动端中固定的底部导航栏


    1f37595758bea8012193a34cfde3.jpg

    移动端中固定的底部导航栏


    最小和最大的操作区域宽度(包括内边距(padding)):

    • 最大:168dp

    • 最小:80dp


    高:

    56dp


    Icon:

    24 x 24dp


    内容对齐:

    文本和icon在区域内水平居中。


    内边距(padding):

    • 被选中状态下区域上内边距(icon上面)为6dp,未选中状态下则为8dp

    • 下内边距(文字下面)为10dp

    • 左右内边距为12dp


    文本标签:

    • Roboto Regular 14sp (选中状态)

    • Roboto Regular 12sp (未选中状态)


     

    49b3595758d1a8012193a38b318f.jpg

    80dp宽

    左右内边距12dp


    02ce5957590aa8012193a31cb116.jpg

    56dp高

    左右内边距12dp

    下内边距10dp


    0aea59575914a8012193a34f3431.jpg

    最大宽度168dp

    左右内边距12dp


    0c4f59575925a8012193a320802a.jpg

    底部导航栏案例


    fa4959575934a8012193a3625acc.jpg

    移动端上的固定的底部导航栏

    56dp高

    24 x 24dp icon

    6dp上内边距(选中状态)

    8dp上内边距(未选中状态)

    10dp下内边距


    35665957593fa8012193a3f78e1e.jpg

    平板端上的固定的底部导航栏

    56dp高

    24 x 24dp icon

    6dp上内边距(选中状态)

    8dp上内边距(未选中状态)

    10dp下内边距


    移动的底部导航栏

    最小和最大的操作区域宽度(包括内边距(padding)):

    • 最大:168dp

    • 最小:96dp


    被选中状态

    • 最大:168dp

    • 最小:96dp


    未选中状态

    • 最大:96dp

    • 最小:56dp


    高:

    56dp


    icon:

    24 x 24dp


    内容对齐:

    文本和icon在区域内水平居中。


    内边距(padding):

    • 被选中状态下区域上内边距(icon上面)为6dp,未选中状态下上、下内边距都是16dp

    • 下内边距(文字下面)为10dp


    文本标签:

    • Roboto Regular 14sp (选中状态)


    095559575951a8012193a3bf0512.jpg

    移动端上移动的底部导航栏

    56dp高

    24 x 24dp icon

    6dp上内边距(选中状态)

    10dp下内边距

    icon和文本之间6dp

    上、下内边距都是16dp(未选中状态)


    b2d859575963a8012193a3982ff2.jpg

    移动端上移动的底部导航栏


    da2759575977a8012193a38d66b8.jpg

    选中状态:最小宽度为96dp


    839559575983a8012193a308d73f.jpg

    未选中状态:最小宽度为56dp


    0f0059575a4ca8012193a32fbdce.jpg

    在选中状态下文本标签可以使用最大的区域宽度


        b94a59575a5ea8012193a3b47813.jpg  

    选中状态:使用最大宽度168dp


        ec2159575a68a8012193a38bd3e4.jpg  

    未选中状态:使用最大宽度96dp


        daf759575aa7a8012193a341ec2f.jpg  

    在选中状态下文本标签可以使用最大的区域宽度


     

    5fd459575ab8a8012193a30730b5.jpg移动端上移动的底部导航栏

    56dp高

    24 x 24dp icon

    6dp上内边距(选中状态)

    10dp下内边距

    icon和文本之间6dp

    上、下内边距都是16dp(未选中状态)


    f2d159575ac3a8012193a3372dc1.jpg平板端上移动的底部导航栏

    56dp高

    24 x 24dp icon

    6dp上内边距(选中状态)

    10dp下内边距

    icon和文本之间6dp

    上、下内边距都是16dp(未选中状态)


     
    高度(Elevation)  (译者注:注意区分两种高:Elevation和height)

    snackbar(6dp)在底部导航栏(8dp)后面(Z轴方向)。


    底部sheet,抽屉式导航和键盘在Z轴方向上都高于底部导航栏,所以都在其前面并临时覆盖它。


    0a0859575b0ca8012193a319bed3.jpg

    snackbar在底部导航栏后面。


    b93159575b19a8012193a3bdcebe.jpg

    底部sheet,抽屉式导航和键盘在Z轴方向上都高于底部导航栏,所以都在其前面并临时覆盖它。


    d12e59575b26a8012193a3d0f2b9.jpg正交视图下的应用结构。




    二、底部sheet(Bottom sheets)  

    底部sheet从屏幕底部上滑出现。


    模态底部sheet(Modal bottom sheets)主要用于移动端。其中有包含其他应用的深度链接。


    常驻底部sheet(Persistent bottom sheets)主要集成显示应用内支持的内容。


    交互

    底部sheet只能由用户发起。


    高度(Elevation)

    模态底部sheet:高于整个应用。

    常驻底部sheet:跟应用高度一致


    其他可替代方案:

    对话框

    菜单


    3c2b59575c5ea8012193a3ce7423.jpg

    - 用法      
     

    存在有两种类型的底部sheet:

    • 模态底部sheet可替代菜单或者简易对话框,对比两者它也能提供其他应用的深度链接选项。模态底部sheet主要用于移动端。

    • 常驻底部sheet主要展示应用内内容。


    高度(Elevation)是区分模态底部sheet和常驻底部sheet的关键。模态底部sheet的默认高度高于常驻底部sheet;常驻底部sheet默认高度与应用高度一致。


     

    因为大屏情况下空间受限小,所以可以使用其他组件代替底部sheet,如简易对话框菜单 。这两者会比底部sheet更适合大屏环境。


    b5ce59575c76a8012193a352ac72.jpg

    模态底部sheet从屏幕底部上滑出现并显示相关内容选项。


    4b9559575c7ea8012193a3910a88.jpg

    常驻底部sheet是应用布局中的重要组成部分之一。

     

    - 常驻底部sheet  

    常驻底部sheet主要展示应用内当前视图内容的补充内容。即使用户不去触发常驻底部sheet,它也会固定并保持在当前视图可见。其默认高度与应用高度一致。


    用法

    • 介绍新内容

    • 展示与主要内容同等重要的补充内容

    4e2759575c88a8012193a3e9c7ee.jpg

    常驻底部sheet和浮动按钮(FAB)同时存在的页面布局中,浮动按钮会因其而在垂直方向上移动。


    5a6f59575c90a8012193a3199f79.jpg

    用户拖移地图的同时,常驻底部sheet会显示相关地点的信息并且保持在当前视图可见。


    5e9d59575c97a8012193a3e8de46.jpg

    无论主视图如何变化都不会影响到在常驻底部sheet上的播放控件。


    移动端

    移动端上常驻底部sheet的宽度与屏幕宽度一致(无论是竖向或是横向布局)。


    平板/桌面端

    常驻底部sheet的宽度可选择与屏幕宽度一致或者以嵌入的形式出现。具体选择哪种方式,应由包含内容的宽度、整体UI、基本内容和格式的选择决定。

    19b059575ca2a8012193a371fb70.jpg

    平板端:常驻底部sheet的宽度与屏幕宽度一致


    4a9a59575caca8012193a370f7b2.jpg

    平板端:常驻底部sheet以嵌入形式出现


    在桌面端上,常驻底部sheet可能会转变成其它形式出现。


    cfc059575cb4a8012193a3a91d8c.jpg

    如图,由于桌面端具备更大的内容展示空间,所以常驻底部sheet可能会转变为图中形式并在页面左侧出现。


    - 模态底部sheet  

    模态底部sheet可替代菜单或者简易对话框,并且它也能提供其他应用的深度链接选项。因为模态底部sheet出现时是在其他UI元素之上,所以为了能够返回并跟在其下面的内容交互,模态底部sheet必须是能被取消的。当模态底部sheet从屏幕底部上滑出现时,屏幕其余部分变暗以突出底部sheet。

    027c59575cbda8012193a3809e34.jpg

    模态底部sheet:列表式布局


    1da159575e65a8012193a3b7f17f.jpg

    模态底部sheet:宫格式布局


    用法

    模态底部sheet:

    • 使用列表或宫格式布局选项来替代菜单或简易对话框

    • 当所在页面没有明显的菜单入口时显示相关菜单

    • 包含的选项应经过可见性优先级考虑再进行排序


    模态底部sheet能够显示较长的菜单选项名称,菜单选项的副文本以及菜单选项icon。


    当显示菜单选项时需要完全展开模态底部sheet,其中模态底部sheet完全展开的极限是距离应用栏(app bar)底部8dp的位置。


    ee5259575e74a8012193a3d781af.jpg

    底部sheet中菜单选项的icon


    11ae59575e86a8012193a32f2b80.jpg

    菜单选项中的副文本


    深度链接

    模态底部sheet能够提供其他应用内容或控件的深度链接。这些内容或控件所在的模态底部sheet宽度同样与屏幕宽度保持一致。

    0b7659575e95a8012193a32504f8.jpg

    用户不用打开字典应用,通过模态底部sheet中的深度链接就能显示查询结果。


    301059575e9da8012193a3df3360.jpg

    图中右边应用展示的底部sheet的内容来自左边的应用。也就是说通过深度链接用户可以直接在当前应用中浏览其他应用的内容。


    深度链接应该满足:

    • 允许用户浏览其他应用较深层级的内容

    • 用户能够返回到最初页面


    但是,深度链接不允许用户向上层级页面导航:用户只能在最初页面停留、往下(深)层级导航或者返回到最初页面。


    另外,用户可以通过深度链接完全跳离底部sheet,跳转到另一视图。


    在底部sheet的深度链接中想要实现向上层级页面导航或者进行某些操作,那只能通过溢出菜单点击跳转到对应应用才能实现。


    001d59575ea6a8012193a341291a.jpg

    可行

    完全展开的模态底部sheet需要在应用栏中提供“X”按钮。


    17d559575eada8012193a3a6879d.jpg

    不可行

    只有用户已经深入页面进行浏览时才提供返回按钮。


    移动端

    模态底部sheet主要是移动端的组件,其宽度与屏幕宽度一致(无论是竖向或是横向布局)。

     

    30e159575eb7a8012193a36cb5ef.jpg

    可行

    用户滑出模态底部sheet时,模态底部sheet不要与应用栏重叠。并且允许用户通过点击或滑动取消模态底部sheet。


    1d4059575ebea8012193a3513611.jpg

    可行

    当显示长列表时,用户可以通过滑动屏幕浏览更多选项。


    2c7759575ec6a8012193a3a147bc.jpg

    不可行

    内容选项应该要和底部sheet的高度相符。强迫症们看着舒服吗?


    9e5a59575edfa8012193a30cbbdb.jpg

    不可行

    用户滑出模态底部sheet时,模态底部sheet不要与应用栏重叠。并且允许用户通过点击或滑动取消模态底部sheet。


    平板/桌面端

    考虑到大屏环境下用户滑出底部sheet后因显示跨度太大容易导致用户注意力分散的问题,故考虑用其他方式替代底部sheet。


    因为桌面端空间受限小,所以它能够支持更多种不同的模态底部sheet替代方案。

    底部sheet替代方案 优势
    菜单 能够保持选项在用户交互点附近
    简易对话框 强势打断用户
    页面中展开 不会像菜单或对话框一样打断用户
    永久性显示所有选项 不需要通过按钮去显示其余选项
    打开新的浏览器窗口 响应式尺寸以及独立的页面布局


    1dec59575ef0a8012193a37be09e.jpg

    菜单能够保持选项在用户交互点附近。


    在大屏环境下使用底部sheet需要注意合理、合适的页面布局。


    f30159575f0aa8012193a35ce143.jpg平板端:宫格式底部sheet


    d49259575f1ba8012193a3ffc532.jpg平板端:长列表底部sheet


    - 行为  

    通过下滑底部sheet、轻触应用栏中的“X”按钮或系统的后退按钮(Android)可以取消底部sheet。


    通过轻触底部sheet外的区域可以取消模态底部sheet。


    14ed59575f27a8012193a3f6e4bb.jpg

    通过下滑底部sheet取消


    8a8659575f30a8012193a388d041.jpg

    通过轻触底部sheet外的区域取消


    155a59575f3aa8012193a31fd764.jpg

    通过轻触应用栏中的“X”按钮取消(在有应用栏的情况下)


    - 尺寸说明  

    移动端上底部sheet的尺寸说明:

    字体和颜色

    • 字体:Roboto Regular 16sp, #000 87%

    • 标题(可选): Roboto Regular 16sp, #000 54%

    • 底部sheet默认背景颜色:#FFF

    • 透明度叠加:#000 20%


    列表式底部sheet

    屏幕边缘左、右外边距(margin):16dp

    上、下外边距:8dp

    每列高:48dp

    icon大小:24 x 24dp,居中并垂直对齐

    文本距离icon:32dp水平方向内边距(padding)

    2e0259576318a8012193a305f2be.jpg

    移动端上的列表式底部sheet


    377a59576309a8012193a3681957.jpg

    移动端上的列表式底部sheet


    顶部带有标题的列表式底部sheet

    屏幕边缘左、右外边距(margin):16dp

    上底部sheet的底部间距:7dp

    分隔线:1dp

    下底部sheet的顶部间距:8dp

    每列高:48dp

    icon大小:24 x 24dp,居中并垂直对齐

    文本距离icon:32dp水平方向内边距(padding)

    顶部标题高:56dp

    df37595762fda8012193a3fc554b.jpg  

    顶部带有标题的列表式底部sheet


    63b9595762efa8012193a3cc97e3.jpg

    顶部带有标题的列表式底部sheet


    带有icon的宫格式底部sheet

    屏幕边缘左、右外边距(margin):24dp

    每列间隔:16dp

    icon大小:48 x 48dp,同样是居中并垂直对齐

    基于栅格分布

    栅格列标签:16dp高,以icon为准居中对齐

    栅格底部内边距:24dp

    5cd5595762e1a8012193a33f6e39.jpg

    包含其他应用选项的宫格式底部sheet


    b8a0595762c6a8012193a3900751.jpg

    包含其他应用选项的宫格式底部sheet


    带有标题的宫格式底部sheet

    屏幕边缘左、右外边距(margin):24dp

    每列间隔:8dp

    分隔线:1dp

    分隔线上、下空间:8dp

    Icon大小:48 x 48dp,居中并垂直对齐

    栅格列标签:16dp高,以icon为准居中对齐

    顶部标题高:56dp

    076e595762b6a8012193a313f7f0.jpg

    带有标题的宫格式底部sheet


    3ed6595762a4a8012193a3136f0a.jpg

    带有标题的宫格式底部sheet


    底部sheet从屏幕底部上滑滑出并占据屏幕的一部分。


    底部sheet的初始位置跟它包含的列表项目(或宫格行数)有关。底部sheet包含的内容数决定了初始位置是否超过16:9屏幕线。

    3ff959576042a8012193a375b3b6.jpg

    底部sheet的初始高度不应超出16:9屏幕线


        f91859576038a8012193a351bcd9.jpg  

    底部sheet的最小初始位置跟它包含的内容数相关


    桌面和平板端应用尺寸说明  

    桌面按平板端的模态和常驻底部sheet参考使用以下这些最小和最大宽度。


    底部sheet的宽度由整个界面宽度的增量决定。基于页面栅格,底部sheet的最大宽度跟页面栅格和它包含的内容相关。


    以960dp宽的屏幕举例说明,如果你使用应用栏(64dp)作为你的增量单位,那么总的增量数就是15(960/64)。那么根据上述结果规定底部sheet距离屏幕边缘最少1个增量单位,底部sheet自身宽度最少6个增量单位。


    屏幕宽度 距离屏幕边缘最小距离(增量单位) 底部sheet自身最小宽度(增量单位)
    960dp 1 6
    1280dp 2 8
    1440dp 3 9


    4eff59576019a8012193a3d08a81.jpg不同桌面屏幕尺寸下的应用


    3
    阅读原文
    |
    举报
    |
    3
    分享
    评论
    用户头像
    评论你的想法~
    表情
    喜欢TA的作品吗?喜欢就快来夸夸TA吧!
    推荐素材
    高级感金属拟物 UI设计组件库
    【新年UI图标】旅行icon
    UI通用设计素材1
    钱包ui模板
    【新年UI图标】积分icon
    【新年UI图标】体育icon
    拟物风质感写实UI卡片合集源文件
    原创UIUX交互橙红渐变炫酷视觉平面设计作品集模板PSD
    APP/小程序商业项目UI模板|99个高保真UI+79个原型
    高级表盘系列UI源文件
    3D渐变流体抽象矢量UI背景图
    【新年UI图标】礼物/活动icon
    3D卡通UI界面图标可爱插画免扣素
    【新年UI图标】30个图标
    Security Camera UI kit
    手表表盘UI系列
    UI 登录界面设计模板包
    新能源APP应用UIKit
    【新年UI图标】珠宝icon
    户外旅行飞机情侣假日出行
    盲盒APP UI设计
    UI界面 组件
    我的钱包-UI界面设计-app
    你可能喜欢
    大家都在看
    登录注册