Ram*_*ani 1 javascript html5 extjs sencha-touch-2
我想在视图页面中应用加载掩码.在启动应用程序时,一些视图页面花费时间来加载它将显示的数据,所以如果它花费时间加载那段时间我想要向用户显示加载掩码,其中包含一些消息,如"loading ....".从一些示例我已经应用了load-mask,但每当我点击该页面时,它都会显示该消息.这是不好的方式因为这里设定时间.我需要像这样应用load-mask如果没有数据它应该向用户显示加载掩码,直到页面获取数据.请任何人帮助我.如何实现这一目标
我的代码在这里: 在控制器级别,我正在使用load-mask的id并设置属性,如下面的代码所示
onCompanyPageLoad: function () {
var loader = Ext.getCmp('mask');
loader.setMessage("Loading...");
loader.setIndicator(true);
loader.setTransparent(false);
loader.show();
setTimeout(function () {
loader.hide();
}, 1000);
}
Run Code Online (Sandbox Code Playgroud)
Thi*_*yen 17
user978790的答案是在Sencha Touch 2中显示和隐藏加载掩码的正式方法.
如果你不能使它工作,很可能你做的事情如下:
Ext.Viewport.setMasked({xtype:'loadmask',message:'your custom loadmask'});
... then do something here
Ext.Viewport.setMasked(false);
Run Code Online (Sandbox Code Playgroud)
请注意,Javascript是异步的,因此它不确保代码行按上述顺序运行.然后有可能Sencha Touch初始化你的加载掩码并立即销毁它.为了正确使用加载掩码:
Ext.Viewport.setMasked(false);
在特殊的被装保障面具初始化后,例如即将推出的功能.事件处理程序,或JSONP/AJAX请求的成功函数.小智 7
我这样做的方式如下:
Ext.Viewport.setMasked({xtype:'loadmask',message:'your custom loadmask'});
Run Code Online (Sandbox Code Playgroud)
然后你可以使用
Ext.Viewport.setMasked(false);
Run Code Online (Sandbox Code Playgroud)
停止显示加载蒙版如果您只想在视图的一部分上显示蒙版,这也适用于组件