设备适配:如何在 UI5 上隐藏特定设备类型的 UI 元素
Device adaptation: how to hide an UI element for a specific device type on UI5
我想根据设备类型(台式机、平板电脑、phone)调整 UI 的某些部分。
根据 Step 36: Device Adaptation,我必须:
- 指定设备型号:
const oDeviceModel = new JSONModel(Device);
oDeviceModel.setDefaultBindingMode("OneWay");
this.setModel(oDeviceModel, "device")
- 将
sapUiVisibleOnlyOnDesktop
/sapUiHideOnDesktop
应用于所需 UI5 元素的 class
属性。
不幸的是,这种方法不适用于 IconTabFilter
,我已经成功地使用 visible = "{= !${device>/system/phone} }"
XML-模板表达式解决了这个问题。
虽然我的方法有效,但我不确定它是否是解决任务的推荐方法。也许,有一些更好的选择如何在 UI5?
上隐藏特定设备类型的 UI 元素
使用“可见”的表达式绑定是解决您问题的“最佳实践”。
在最新的 UI5 openSAP 课程 Evolved Web Apps with SAPUI5(第 2 周 - 第 3 单元)中明确提及。
我想根据设备类型(台式机、平板电脑、phone)调整 UI 的某些部分。
根据 Step 36: Device Adaptation,我必须:
- 指定设备型号:
const oDeviceModel = new JSONModel(Device);
oDeviceModel.setDefaultBindingMode("OneWay");
this.setModel(oDeviceModel, "device")
- 将
sapUiVisibleOnlyOnDesktop
/sapUiHideOnDesktop
应用于所需 UI5 元素的class
属性。
不幸的是,这种方法不适用于 IconTabFilter
,我已经成功地使用 visible = "{= !${device>/system/phone} }"
XML-模板表达式解决了这个问题。
虽然我的方法有效,但我不确定它是否是解决任务的推荐方法。也许,有一些更好的选择如何在 UI5?
上隐藏特定设备类型的 UI 元素使用“可见”的表达式绑定是解决您问题的“最佳实践”。
在最新的 UI5 openSAP 课程 Evolved Web Apps with SAPUI5(第 2 周 - 第 3 单元)中明确提及。