是否可以隐藏智能表中的忙指示符?

时间:2017-01-19 08:51:26

标签: sapui5

我有一个带动作按钮的智能桌子。当我点击操作按钮时,整个智能表覆盖着忙指示符,直到从后端检索到操作数据按钮。我试图用*

隐藏智能表上的忙指示符
  

setBusy(假)

  

sap.ui.core.BusyIndi​​cator.hide()

然而它不知何故不起作用。

我的问题是,是否无法在智能桌上隐藏忙碌指示器?智能表的默认属性是UI5吗?

3 个答案:

答案 0 :(得分:1)

我不问你为什么不想显示繁忙的指标。假设您正在使用XML视图,您应该能够使用属性busyIndicatorDelay并应用非常高的值来延迟繁忙指示符的显示。有关详细信息,请查看documentation

答案 1 :(得分:0)

一个简单的解决方案是将自定义CSS规则设置为none

假设您确实为智能表设置了ID tableId,CSS规则将是

[id$=tableId] .sapUiLocalBusyIndicator {
    display: none;
}

要在所有智能表上应用规则,请使用

.sapUiCompSmartTable .sapUiLocalBusyIndicator` {
    display: none;
}

如果您只想隐藏忙碌指示符,如果单击特定操作按钮,则可以在操作处理程序中使用方法 addStyleClass 和自定义类,并相应地指定CSS规则。 当然,您必须在收到数据后删除该类。

答案 2 :(得分:0)

SmartTable的{​​{1}}属性设置为enableAutoBinding时遇到了这个问题,因为我想在应用程序启动时填充表数据。

要解决此问题,如果您在视图中的true中添加了表格,请为其设置ID,例如“ idTable”,然后在视图的SmartTable方法中添加以下行:

this.byId(“ idTable”)。setBusy(false);

如果尚未在视图的onInit中添加表,请获取SmartTable实例并使用API​​ SmartTable来获取包含的表,然后在其中使用上述方法getTable()