假设主页面是list,点击list item时,进入到子页面,子页面的内容是从网上加载进来的,传统的方法是使用mui.openWindow({params})
,而如果我们的子页面有很多内容需要加载,而且网速不好的话,可能切换到子页面会先显示“白屏”,然后内容慢慢的浮现出来,极度影响使用体验,我们可以使用mui的“现加载”方法。
何谓“现加载”?
“现加载”的意思就是当我们点击list item后,子页面加载内容,这个时候不让子页面展示,弹出等待框,提示用户“数据正在加载”,当子页面的内容完全加载完毕后,再展示。
如何“现加载”?
现加载的方式在mui里使用起来很简单, 首先在主页面声明一个等待框,并创建子页面:
代码语言:javascript复制用
plus.webview.create()
方法,而不是mui.openWindow({params})
var nwaiting = plus.nativeUI.showWaiting();
webviewShow = plus.webview.create(url);
然后在子页面数据加载完成后的回调中将子页面show
出来,并关闭等待框:
var currentView = plus.webview.currentWebview();
currentView.show('slide-in-right', 300);
plus.nativeUI.closeWaiting();
搞定!
参考资料: http://www.html5plus.org/doc/zh_cn/webview.html