是否有更好的替代sap.ui.commons.layout.MatrixLayout?

时间:2015-11-12 16:12:05

标签: javascript sap sapui5 hana

什么是进行布局的最佳方式,其中开始内容是固定的,中心是flex,最终内容是固定的?就像一个100%宽的HBox有三列,第一列和最后一列固定,中心伸展?

我现在就是这样做的,我可以避免使用sap.ui.commons.layout.MatrixLayout吗?

new sap.ui.commons.layout.MatrixLayout({
    layoutFixed: true,
    columns: 3,
    width: '100%',
    widths: [ '100px', '100%', '100px' ],
    rows: [
        new sap.ui.commons.layout.MatrixLayoutRow({
            cells : [
                new sap.ui.commons.layout.MatrixLayoutCell({
                    content: new sap.m.Label({
                        text: 'start'
                    })
                }),
                new sap.ui.commons.layout.MatrixLayoutCell({
                    content: new sap.m.Label({
                        text: 'center'
                    })
                }),
                new sap.ui.commons.layout.MatrixLayoutCell({
                    content: new sap.m.Label({
                        text: 'end'
                    })
                })
            ]
        })
    ]
})

我尝试使用sap.ui.layout.HorizontalLayout,但它没有横向延伸:

sap.ui.layout.HorizontalLayout({
    width: '100%',
    content: [
        new sap.m.Label({
            width: '100px',
            text: 'start'
        }),
        new sap.m.Label({
            width: '100%',
            text: 'center'
        }),
        new sap.m.Label({
            width: '100px',
            text: 'end'
        })
    ]
})

2 个答案:

答案 0 :(得分:2)

HBox是支持CSS3 FlexBoxLayout的浏览器的解决方案。或者,您可以嵌套两个FixFlex布局 - 这应该适用于所有支持UI5的浏览器(FixFlex就像HBox / Vbox的特定有限子集,非FlexBox浏览器的后备)。

答案 1 :(得分:0)

好的,我想我明白了。 :)

$ docker-machine --storage-path f: create -d virtualbox dev