javascript - UI5 添加/删除/更改响应式拆分器拆分 Pane

标签 javascript xml sapui5

我正在尝试修改我 View 中的拆分 Pane 。

我的观点是这样的:

<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>

我要做的第一件事是更改 Pane 的起始宽度。修改面板的大小很容易,但面板不会更改为与其面板相同的宽度。将 Pane 设置为 width="20%"width="80%" 不会移动拆分器开始的位置。

我还希望我的其中一个 Pane 在应用程序启动时不存在,并且基本上可以通过切换来添加和删除,包括它的面板和里面的所有内容。

有没有办法用 javascript 或最好用 xml 来做这些事情?

最佳答案

这并不容易做到。你必须使用 SplitterLayoutData (这是实验性的)

将以下行添加到 Controller 的 onInit() 函数中:

        var oSplitterLayoutData= new SplitterLayoutData({size: "30%"});
        var oPane= this.byId("default");
        oPane.setLayoutData(oSplitterLayoutData);

在 XML View 的面板中:

    <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>

关于javascript - UI5 添加/删除/更改响应式拆分器拆分 Pane ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48312039/

相关文章:

javascript - 这个字符串语法在 JavaScript 中意味着什么?

android - 使用 LayoutInflater 创建动态 View

javascript - SAPUI5 : Process Flow control is not working on different language setting

sapui5 - 如何在 UI5 1.38 中重用另一个应用程序的组件?

javascript - document.form.field.value 在 Linux 机器中没有给出值

javascript - require.js 中的显式依赖处理与隐式依赖处理

javascript - 从 JavaScript 调用 Django View

Android View 相同的宽度和高度

java - 在 RelativeLayout 中动态重新定位 View

sapui5 - Fiori - 跨应用程序导航