我需要动态设置垂直布局的高度。我的页面有一个高度为100px的标题图像,高度为26px的标签剩余部分是主要内容。我在App.controller.js
中编写了以下代码。它不起作用
// tab_layt is the id of vertical layout
var thisView = this.getView().byId("tab_layt");
var height = jQuery(window).height() - (jQuery(".header").height() + jQuery(".tab").height());
thisView.setHeight(height);
显示错误
" thisView.setHeight不是函数"。
答案 0 :(得分:1)
sap.ui.layout.VerticalLayout
没有名为height的属性。
布局高度将与子元素对齐'高度自动。 但是,您可以使用自定义CSS类覆盖它,但不建议使用它。
thisView.addStyleClass("nameOfTheCssClass");
或者您可以调整子元素的大小以填充整个屏幕 - 这将调整布局本身的大小。例如,如果您使用的是表,则可以设置表的height属性而不是外部布局。
(变量名thisView
不是最好的,如果你引用一个布局,以后当你试图理解你自己的代码时它会引起误解)