初始主題可以寫死在應用程式中(在加載 SAPUI5 的引導程式的腳本标簽中)或在加載 SAPUI5 之前定義的 JS 配置對象中,例如:
<script id="sap-ui-bootstrap"
type="text/javascript"
src="resources/sap-ui-core.js"
data-sap-ui-theme="sap_belize">
</script>
這種方式的優先級最低。
啟動 SAPUI5 應用程式時可以使用 URL 參數(例如:html?sap-ui-theme=sap_belize)來設定或覆寫初始主題。
如果您使用 UI 主題設計器來定義自己的自定義主題,則可以将自定義主題的位置作為伺服器相對路徑附加到 sap-ui-theme 參數中,并用 @ 符号分隔:
http://myserver.com/sap/myapp/?sap-ui-theme=my-theme@/sap/public/bc/themes/~client-111盡管可以指定完整的 URL,但架構将僅使用 URL 的路徑資訊來防止基于 CSS 的攻擊,否則這些攻擊可能會通過從惡意伺服器引用 CSS 來實作。 例如,在更複雜的環境中,如果 UI 主題設計器的基礎結構在單獨的伺服器上運作,則可以使用 Web 排程程式将兩個伺服器合并到一個命名空間中,或者您應該使用 sap 方法設定完整的 URL。 ui.getCore.applyTheme 用于自定義應用程式,如下所述。
第三種方式是,您可以使用 sap.ui.getCore.applyTheme 方法動态切換主題。 應用程式狀态不會丢失,并且沒有伺服器往返(除了加載 CSS,如果沒有緩存)。僅交換樣式表