sap.m.Shell&amp; sap.ui.commons.ApplicationHeader <div>问题

时间:2015-05-26 16:58:27

标签: sapui5 sap.m

我在 index.html

中按如下方式在shell中设置了应用程序
new sap.m.Shell({
   app : new sap.ui.core.ComponentContainer({
     height : "100%",                               
     name : "xx.xx.xx"
   })
}).placeAt("content");

是否可以将应用程序标题控件添加到此?

//create the ApplicationHeader control
var oAppHeader = new sap.ui.commons.ApplicationHeader("appHeader");
//configure the branding area

oAppHeader.setLogoSrc("http://www.sap.com/global/images/SAPLogo.gif");
oAppHeader.setLogoText("Logo Text");

//configure the welcome area
oAppHeader.setDisplayWelcome(true);
oAppHeader.setUserName(userFullName);

//configure the log off area
oAppHeader.setDisplayLogoff(true);

oAppHeader.placeAt("content");

当我在Shell之前或在主要版本中添加它时,它看起来很好但是屏幕尺寸增加到超过100%,所以你必须滚动才能看到页脚(或应用程序标题,取决于放置的位置)

这是 Main.view.xml &amp;的 Main.controller.js

 <core:View xmlns:core="sap.ui.core"
               xmlns="sap.m" controllerName="emc.ui.sc.view.Main"
   displayBlock="true" height="100%" >
            <App id="idMain">
            </App>
    </core:View>

    sap.ui.controller("emc.ui.sc.view.Main", {
        onInit : function() {
            if (sap.ui.Device.support.touch === false) {
                this.getView().addStyleClass("sapUiSizeCompact");
            }
        }
    });

1 个答案:

答案 0 :(得分:0)

Shell是 - 正如其名称所示 - 旨在用作根控制。所以ApplicationHeader必须包含在Shell中。你为什么不用 Unified Shell