我已经在routeMatched()函数中显示了我的BusyIndicator
sap.ui.core.BusyIndicator.show();
稍后,在我将页面再次设置为可见后,此按钮将被隐藏。
...
...
...
self.getView().byId("Page1").setVisible(true);
sap.ui.core.BusyIndicator.hide();
问题是:由于视图不久后再次显示,因此指示器再次被隐藏,但是在速度较慢的移动设备上,页面在隐藏指示器之后正在呈现。
我需要完全隐藏视图,直到完成加载。
有什么想法吗?
答案 0 :(得分:0)
如果您的应用程序在渲染之前正在加载数据,请在AJAX请求的成功方法中隐藏busyIndicator
。
如果您使用的是oData模型,请将侦听器附加到oData模型的batchRequestCompleted
事件,并在事件触发时隐藏BusyIndicator
。
这应该优化移动设备上的行为。 由于呈现页面的SAPUI5框架的异步行为取决于接收到的数据,尽管页面已经可见,但可能某些UI元素仍在呈现。
答案 1 :(得分:0)
解决方案是使用sap.m.busyIndicator而不是sap.ui.core.BusyIndicator。