知识点
- 理解 Material Design 中屏幕的平面阴影和触摸响应
- 熟悉平面的使用规范
- 掌握 Material Design 样式的自定义平面创建过程
参考资料
屏幕平面
屏幕上的一切都在其中的一个平面上,包括所有文字、图标、照片、按钮等人和 UI 元素。虽然这些平面具有表明现实行为的实体属性,但它们又不像现实世界的行为一样收到限制。我们可以通过平面的一小部分的物理性,来显示事物之间的差异性和相关性。
平面阴影
一般来说,物体离我们越近就越容易在视觉上引起我们的注意,根据物体的尺寸,以及它们覆盖和投射阴影的方式,我们能区分哪些物体离我们更近,根据它们背后的物体来做出判断。所以我们可以在 UI 中使用深度列表将注意力引导至重要的元素。
在 2D 屏幕中如何运用这些概念呢?
我们使用阴影来传递一个平面相对于另一个平面的高度,离你更近的平面将投射出更大的阴影。要正确绘制出这些阴影,需要进行大量复杂的数学运算。而我们只需在 Android 上对代码进行少量编辑,就能动态绘制出这些阴影来。
具体可查看官方文档-高度和阴影
使用平面
一个平面就是一个容纳内容的容器,它能够实现与其它元素的分组和分离。
根据内容创建平面
从经验上讲,如果内容属于同类,浏览和对比就十分重要,所以应该将它们放在同一个平面上,如果我们需要展现不同类型的条目,将它们放置在各自的平面上是最合适的。
引导注意力是一门强大的技术。但是需要恰当的使用,平面上一次性出现过多的独立平面会分散注意力。从经验上讲,最好不要一次性在屏幕上出现 5 个以上的平面。
实现平面
要创建平面,关键是设置高度值(elevation
)。高度是指平面与背面之间的距离(the distance above the back plane
),数值越大,阴影越大(higher values produce larger shadows
),也越分散,有一种离底面更高更远的视觉感。
FAB(FloatingActionButton)-悬浮操作按钮
Material Design
的标志性设计模式之一就是 FAB
。它悬浮在应用内容的上方,可以促使我们进行重要的操作。
FAB
具有标准的尺寸和高度,所以它在各应用程序之间很容易被辨认出来。它的直径为 40 或 56dp。通常静止高度为 6dp,当被按下时,这个高度将达到 12dp。叠放在某个适当角落时可以很好的对接。
避免在应用中过度使用它,注意在每个屏幕中最多使用一个 FAB。不是每个屏幕上都需要一个 FAB,但如果屏幕上有一个明确的操作,那么这就是凸显它的一个好方法。如果你对确认哪个操作才是 FAB 感到纠结,那就意味着你很可能不需要 FAB。
什么时候用浮动操作按钮?