说明
Jerry 从 2014 年加入 SAP成都研究院 CRM Fiori 开发团队之后开始接触 SAP UI5,曾经在 SAP 社区和“汪子熙”微信公众号上发表过多篇关于 SAP UI5 工作原理和源码解析的文章。
在 Jerry 这篇文章 对 SAP UI5 一无所知的新手,从哪些材料开始学习比较好? 曾经提到,Jerry 也是从 SAP UI5 菜鸟一路走过来,深知只有 ABAP 开发背景的开发者,向 SAP UI5 开发领域转型的不易,因此我在业余时间设计了这份适合 SAP UI5 初学者的学习教程,把开发一个完整的 SAP UI5 应用的流程,拆分成若干个步骤,力求每个步骤里,把涉及到的知识点都涵盖到。这些知识点可能不像我的 UI5 源码分析系列文章那么深入,但力求浅显易懂,便于 SAP UI5 初学者理解。
本教程每一个步骤的源代码,都存放在我的 Github 上,分别用文件夹 01,02,03 等等来标识,例如步骤 1 的源代码在这里。
每一个步骤均是前一步骤的基础上,添加了若干新特性。建议零基础或者对 SAP UI5 知之甚少的初学者,按照顺序从第一个步骤开始循序渐进地学习,把这些代码下载到本地,配合教程的文字讲解,自己动手,以加深理解。
大家如果对教程的每个步骤有任何疑问,欢迎在教程对应的步骤文章里给我评论,进行留言。
主从表格联动效果,也是 SAP 项目中一个常见的需求。本步骤实际上就来源于一位朋友在知乎上向我发起的咨询。
所谓主从表格联动,就是应用界面上同时显示了两张表格,第一张表格为主表,选择主表任意一行之后,在第二张表格即次表上,继续显示该选中行项目的明细信息。
我们来看一个实际的例子。
假设我们有一张表格,从左到右的列,依次显示每个人的姓,名,年龄和他的朋友信息。
由于每个人可能拥有不止一个朋友,因此对于同一个行项目,其 朋友
列可能不止同一行。比如上图中,李四有三个朋友,王五和赵二分别有两个朋友。
对于这种一个行项目的某一列可能会具有多条数据的复杂结构,会导致如上图所示,每个行项目在表格里显示的高度都有差异,从视觉效果上来说,会给用户带来 UI 风格不一致的感受。
避免这种用户体验问题,遵循 SAP Fiori 设计准则的一种实现方法就是主从联动表
。
将姓名和年龄显示的信息放到主表里,当主表的某一行被选中时,在从表中显示这一行数据对应的明细数据。
按照本步骤完成之后,我们会得到下面这个外观的 SAP UI5 应用:
选中主表的某个行项目后,会以从表
的方式,显示该行项目代表的人,所拥有的所有朋友的信息。不难看出,采用主从表格联动之后,无论主表还是从表,其行项目的高度都能保持统一,且人-朋友关系
的信息展示更加清楚和一目了然。
下面是详细的实现步骤。