前面我们的示例都是在 Bootstrap 中通过申明 data-sap-ui-theme="sap_bluecrystal" 设置页面的主题为 Blue crystal,翻译为中文叫蓝色水晶,听起来还是不错的名称。那么,SAPUI5 提供了哪些预设的主题呢?

本篇就通过一个小例子,了解这些主题,顺便复习一下 控件共用 event handler,还有 grid layout。开发人员也可以自定义主题,这个在企业真实的开发中用的到,因为每个企业都会追求独特性。

SAPUI5 主题和设置方法

SAPUI5 默认提供了以下主题:

  • Blue crystal
  • Platium
  • Gold Reflection
  • High Contast Black
  • Belize: 这个是最新的

设置主题:

方法一是在 Bootstrap 中声明,方法二是通过下面的方法进行设置:

sap.ui.getCore().applyTheme(sThemeName, sThemeBaseUrl?)

applyTheme() 的参数是一个字符串,比如 sap_bluecrystal 代表 Blue Crystal 主题。Theme 设置比较简单,直接贴上代码。

<!DOCTYPE HTML>
<html><head><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta http-equiv='Content-Type' content='text/html;charset=UTF-8'/><script src="resources/sap-ui-core.js"id="sap-ui-bootstrap"data-sap-ui-libs="sap.m, sap.ui.layout"data-sap-ui-theme="sap_bluecrystal"></script>       <!-- Application area --><script>function onButtonPressed(oEvent) {var sId = oEvent.getSource().getId();var oCore = sap.ui.getCore();if (sId == "btn1") {oCore.applyTheme("sap_bluecrystal");} else if (sId == "btn2"){oCore.applyTheme("sap_platium");} else if (sId == "btn3") {oCore.applyTheme("sap_goldreflection");} else if (sId == "btn4") {oCore.applyTheme("sap_hcb");}}function display() {var oButton1 = new sap.m.Button("btn1", {text: "Blue Crystal",press: onButtonPressed});var oButton2 = new sap.m.Button("btn2", {text: "Platium",press: onButtonPressed});var oButton3 = new sap.m.Button("btn3", {text: "Gold Reflection",press: onButtonPressed});var oButton4 = new sap.m.Button("btn4", {text: "High Contrast Black",press: onButtonPressed});// Grid layout占页面60%,居中new sap.ui.layout.Grid({width: "60%",position: sap.ui.layout.GridPosition.Center,content: [oButton1, oButton2, oButton3, oButton4]}).placeAt("content");}sap.ui.getCore().attachInit(display);</script></head><body class="sapUiBody sapUiResponsiveMargin" role="application"><div id="content"></div></body>
</html>

我们看看界面效果,个人觉得还是跟着 SAP 的潮流。最新的是 Belize,是 SAP 主打的界面主题。

Blue crystal 主题:

Platium 主题:

Gold reflection 主题:

High contrast black 主题:

参考资料

Belize will be the new BlueCrystal

SAPUI5 (05) - 主题 (Theming)相关推荐

  1. 【Hexo】Hexo-NexT主题-博客搭建

    为了记录我的大学生活的学习,在2020春节前决定搭建一个自己的博客来记录自己大学四年的生活和学习,本文为参考b站up:Mackxin的教程来进行记录我对Hexo-next主题的学习过程以及练练手,以后 ...

  2. 如何使用Sulu设置在线多语言杂志

    We previously demonstrated the proper way to get started with Sulu CMS by setting up a Hello World i ...

  3. [译]NGINX 和 ZooKeeper,动态负载平衡和部署(上)

    [译]NGINX 和 ZooKeeper,动态负载平衡和部署(上) Aidan Carson · 2016-07-22 11:38 原文:NGINX and ZooKeeper, Dynamic Lo ...

  4. 吴思涵国内首场肿瘤ecDNA学术报告|深度揭秘半个世纪ecDNA的研究成果及突破性进展...

    · 「ecDNA研究回顾」 · yr 1965年 54年前,The Lancet<柳叶刀>首次报道了染色体外DNA的存在. yr 2019年 吴思涵作为第一作者发表Nature,第一次正面 ...

  5. 详解数据治理相关的7个术语和名词

    导读:本文介绍数据治理有关的名词和概念.当然,与数据治理相关的概念非常多,以下仅罗列几个常见的. 作者:用友平台与数据智能团队 来源:大数据DT(ID:hzdashuju) 01 数据元 1. 名词解 ...

  6. 【Oracle】-Difference between Instance recovery and Crash Recovery

    Difference between Instance recovery and Crash Recovery ============================================ ...

  7. 开始报名丨CCF C³-13@奇安信:透视俄乌网络战 —— 网络空间基础设施面临的安全对抗与制裁博弈...

    CCF C³活动第十三期主题:透视俄乌网络战--网络空间基础设施面临的安全对抗与制裁博弈,将于7月8日周五晚(18:00-21:30),在奇安信安全中心举行,名额有限,报名从速. 自俄乌军事冲突正式爆 ...

  8. react 使用 svg_在React本机中使用svg构建钟面

    react 使用 svg In this article, we are going to look at how to draw a nice-looking analog clock face b ...

  9. 小就是大|2022 OceanBase 年度发布会亮点抢先看!

    8 月 10 日,OceanBase 将在北京.上海.深圳,以"三地分布式"形式举办「2022 年 OceanBase 年度发布会」,届时,OceanBase 将重磅发布 4.0 ...

最新文章

  1. 快速系统从零学习OpenCV 4路线图
  2. C++多态中虚函数的深入理解
  3. 非线程安全类ArrayList出现异常:java.util.ConcurrentModificationException
  4. 从0到1,了解NLP中的文本相似度 1
  5. Linux网络编程 之 套接字(四)
  6. ts可展开注释_Nike控告WL的始末,和它被TS带货后的几近成名
  7. np.linalg 线性代数
  8. Mysql CONCAT FIND_IN_SET用法
  9. ASP.NET——C#文件夹创建与文件存在判断
  10. VB.NET 中图形旋转任意角度 [ZT]
  11. 美国人太嚣张(爆笑呀!)
  12. java网上书店模板_网上书店模板下载.doc
  13. Android PreferenceActivity设置菜单使用
  14. 傅里叶级数与傅里叶变换
  15. python怎么打字母_如何用python打印字母表?
  16. java程序员工资有多少?java程序员现状如何?
  17. 网站的服务器什么意思,网站服务器站点是什么意思
  18. 陈松松:新人做短视频项目,四步找准自己的定位
  19. 关于《深圳市龙华区技能人才扶持办法(试行)》的政策解读
  20. 最新pr值大于6的网站大全

热门文章

  1. POI-HSSFWorkbook合并单元格及文字居中问题
  2. word中将表格单元格合并后,如何让文字上下也处于居中的位置
  3. 云南省高校计算机等级考试c类难吗,A、B、C类的难度差距真的很大吗?
  4. 3阶贝塞尔曲线沿线长等距分割方法
  5. icon图标素材网站推荐,支持免费下载
  6. 【转】用Python的Pandas和Matplotlib绘制股票唐奇安通道,布林带通道和鳄鱼组线
  7. php手机摄像头监控程序,PHP自动Get监控源码分享
  8. zzw原创_cmd下带jar包运行提示 “错误: 找不到或无法加载主类 ”
  9. ACM C++ cin cout 加速IO
  10. 闲鱼app关键词抓包案例,配合frida成功抓包