在我看来,我正在尝试修改拆分窗格。
我的看法如下:
<mvc:View
controllerName="svm.controller.Controller"
xmlns:l="sap.ui.layout"
xmlns:mvc="sap.ui.core.mvc"
xmlns:core="sap.ui.core"
xmlns="sap.m">
<l:ResponsiveSplitter defaultPane="default" width="100%" height="100%">
<l:PaneContainer>
<l:SplitPane id="default" height="100%">
<Panel headerText="header">
</Panel>
</l:SplitPane>
<l:SplitPane height="100%">
<Panel headerText="header2">
</Panel>
</l:SplitPane>
</l:PaneContainer>
<l:ResponsiveSplitter>
</mvc:View>
我想做的第一件事是改变窗格开始的宽度。修改面板的大小很容易,但窗格不会更改为与面板相同的宽度。将窗格设置为width="20%"
和width="80%"
对拆分器开始位置没有任何作用。
我还希望在应用程序启动时,我的一个窗格不存在,并且基本上是在一个按钮上添加和删除,完成它的面板和内部的一切。
有什么方法可以用javascript或者最好用xml来完成这些事情吗?
发布于 2018-01-26 15:55:15
这是不容易做到的。您必须使用SplitterLayoutData (这是实验性的)
将以下行添加到控制器的onInit()-function中:
var oSplitterLayoutData= new SplitterLayoutData({size: "30%"});
var oPane= this.byId("default");
oPane.setLayoutData(oSplitterLayoutData);
XML中面板中的或:
<mvc:View
controllerName="sap.ui.demo.basicTemplate.controller.App"
xmlns:l="sap.ui.layout"
xmlns:mvc="sap.ui.core.mvc"
xmlns:core="sap.ui.core"
xmlns="sap.m">
<l:ResponsiveSplitter defaultPane="default" width="100%" height="100%">
<l:PaneContainer>
<l:SplitPane id="default" height="100%">
<Panel headerText="header">
<layoutData><l:SplitterLayoutData size="30%" /></layoutData>
</Panel>
</l:SplitPane>
<l:SplitPane height="100%">
<Panel headerText="header2">
</Panel>
</l:SplitPane>
</l:PaneContainer>
</l:ResponsiveSplitter>
</mvc:View>
https://stackoverflow.com/questions/48312039
复制相似问题