博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Fiori里花瓣的动画效果实现原理
阅读量:6003 次
发布时间:2019-06-20

本文共 699 字,大约阅读时间需要 2 分钟。

hot3.png

Fiori里的busy dialog有两种表现形式,一种是下图里的花朵形状,由5个不断旋转的花瓣组成。另一种是下图的3/4个圆环不断旋转的效果。

关于前者的效果,可以看我制作的这个。这个视频是手动将下图setTimeout的300毫秒延时改成30秒之后的效果,意思是30秒之后这个花瓣效果才消失。

1. 根据调试器里调用栈的观察,每当url发生变化时,会触发sap.ui.controller.doHashChange,该方法则会调用openLoadingScreen.这个方法里会创建BusyDialog的实例并调用open方法。Busy Dialog的实现位置: /sap/bc/ui5_ui5/ui2/ushell/resources/sap/m/BusyDialog.js

2. 动画效果的渲染实现位置: /sap/bc/ui5_ui5/ui2/ushell/resources/sap/ui/core/Popup.js.

第52行的renderFioriFlower方法:

从97行的循环能看出在循环体内创建了5个div element,实际上就是UI Fiori动画效果里的5个花瓣。

3.Fiori动画效果显示之后,什么时候消失?

使用setTimeout将LoadingDialog的关闭动作加入到执行队列里。如果300毫秒之后(第188行的参数)执行队列里没有其他待执行的事件,则关闭该Dialog。

要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

转载于:https://my.oschina.net/u/3771578/blog/1623637

你可能感兴趣的文章
wget 用法
查看>>
改善 ASP.NET MVC 代码库的 5 点建议
查看>>
Git配置以及命令总结
查看>>
cacti基础配置,附带软件包
查看>>
Centos 7 Saltstack自动化部署weblogic 12c
查看>>
ORACLE学习笔记--SQL查询语句
查看>>
自学sql之路,SQL 是用于访问和处理数据库的标准的计算机语言!
查看>>
Nginx基本配置
查看>>
SpringCloud 遇到到的坑 之 FeignClient
查看>>
Linux之虚拟化
查看>>
社区企业操作系统 CentOS 6.X 相关资源
查看>>
如何查杀stopped进程
查看>>
linux的正则、grep及egrep介绍
查看>>
使用python进行windows自动化测试(1)
查看>>
linux下Raid及mdadm命令详解
查看>>
01-openldap-基础环境准备
查看>>
Centos-7.5Linux系统启动原理及故障排除
查看>>
关于《3D数学基础:图形与游戏开发》里的一处比较大的混乱
查看>>
使用codepush进行ReactNative热部署
查看>>
github删除项目
查看>>