1.1.3 界面部分
界面可以说是和用户打交道最多的环节,好的界面不仅会提升产品的美感,还具有吸引用户、提高效率等诸多优点。从某种意义上说,一个完整的App就是由多个界面和众多数据构成的。因此,让产品拥有良好的界面体验值得每一个开发者深入探究。Android Jetpack组件提供了诸多工具,帮助开发者绘制界面。接下来,我们先了解一下。
(1)Animation & Transitions意为动画和过渡。顾名思义,就像PowerPoint里面的切换和自定义动画效果,Android平台默认提供了一系列界面切换和组件动画。Android Jetpack除了提供一系列简化动画的API外,还提供了基于物理学的弹簧动画,通过阻尼和刚度属性,使动画具备相应的物理特性。
(2)Auto/TV & Wear则是为现代汽车智能车机、大屏幕电视和可穿戴设备准备的,它们广泛适用于众多版本的Android操作系统和各类屏幕尺寸的设备。
(3)Emoji是表情符号字体库,随着Android版本的更新,表情符号也在日益增多。借助Emoji组件,开发者可以实现在旧版Android操作系统上使用新版本的表情符号库。
(4)Fragment是组件化界面的基本单位,通过对Fragment的管理实现在不同尺寸的设备上显示合适的内容。Android Jetpack中的Fragment组件通常和Navigation组件协同使用,可以简化Fragment的管理,提升App的运行性能。
(5)Layout的意思是布局组件,Android Jetpack中提供了多种开箱即用的组件,比如DrawerLayout(符合Material Design的抽屉式导航栏)、SlidingPanelLayout(通过滑动显示的面板组件)、ConstraintLayout(基于相对定位的布局方式)等。一方面,可以简化多种尺寸屏幕适配;另一方面,对于某些常见的组件,省去了具体实现的工作量。
Palette意为调色板,使用它可以帮助开发者从一张图片中提取出具有代表性的颜色,从而提高App界面的整体观感质量。
有开发经验,特别是前端产品开发经验的朋友都知道,绘制图形界面是一件多么重要,多么烦琐的工作。设计师在复查界面时通常会提出一些很细微的调整,让开发者反复修改,而Android设备的多样化增加了屏幕适配的难度。得益于以上这些组件库,大幅简化了我们的界面工作。