【发布时间】:2019-01-22 06:29:15
【问题描述】:
是否有可能在 UI5 中获得任何行为,例如 xml 的屏幕大小相关属性?
我有一张有几列的表格:
<table>
<columns>
<column id="column1">
</column>
<column id="column2" hAlign="Begin">
</column>
<column id="column3" minScreenWidth="Tablet">
</column>
<columns>
[...]
</table>
column 2 的内容对齐方式为左对齐 (hAlign="Begin")。但是在智能手机上,column3 由于minScreenWidth="Tablet" 而看不到,它看起来不太好。所以我想做的是在智能手机上查看时将 column2 的属性更改为hAlign="End"。我怎样才能做到这一点?
我在控制器中添加了以下代码行:
sap.ui.Device.media.attachHandler(this.fnSizeChange, null, sap.ui.Device.media.RANGESETS.SAP_STANDARD);
但是在 fnSizeChange 方法中我无法检索视图..
this.byId("column"); 以错误“byId 不是函数”结尾,因为这不引用名为“窗口”的东西。 this.getView().byId("column"); 也不起作用。
fnSizeChange: function (mParams){
switch(mParams.name){
case "Phone":
this.byId("column").setHAlign("End"); // NOT working
this.getView().byId("column").setHAlign("End"); //NOT working either
break;
case "Tablet":
this.byId("column").setHAlign("Begin");
break;
case "Desktop":
this.byId("column").setHAlign("Begin");
break;
}
}
【问题讨论】:
标签: javascript xml sapui5