cancel
Showing results for 
Search instead for 
Did you mean: 

UI5 Add/remove/change responsive splitter split pane

0 Kudos

I am trying to modify the split panes in my view. My view looks like this:

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

The first thing I want to do is change how wide the panes start. It is easy to modify the size of the panel but the pane does not change to be the same width as its panel. Setting the pane to `width="20%"` and `width="80%"` does nothing to move where the splitters start.

I also want one of my panes to not be there when the application starts and to basically be added and removed on a toggle, complete with it's panel and everything inside.

Is there a way to do these things in javascript or preferably in xml?

Accepted Solutions (0)

Answers (2)

Answers (2)

0 Kudos

You can use SplitterLayoutData

Work since 1.60 SAPUI5 version

http://jsfiddle.net/y9rffmm5/3/

Example:

        <l:ResponsiveSplitter defaultPane="default" width="100%" height="100%">
            <l:PaneContainer>
                <l:SplitPane id="default" height="100%">
                  <l:layoutData><l:SplitterLayoutData resizable="true" size="25%"/></l:layoutData> 
                  <Panel headerText="header">
                    </Panel>

                     ......
0 Kudos

Hii try with below code.....give a width for SplitPane it will work

<l:SplitPane requiredParentWidth="400" id="default">

<m:Panel headerText="Minimum parent width 400" height="100%">

<m:List headerText="Products" items="{ path: '/ProductCollection' }">

<m:StandardListItem title="{Name}" counter="{Quantity}"/> </m:List> </m:Panel>

</l:SplitPane>

0 Kudos

This did not work. I gave requiredParentWidth to all my split panes and nothing changed, using % values did not work either

0 Kudos

It seems those split panes are all the same with, it also seems like the only function of the requiredParentWidth is to display the split pane if there is enough screen width.

I am looking for a way to change the width programmatically.