2017-08-25 80 views
0

在我的tvOS应用程序中,在显示模板之前,加载模板即将出现。
但是:它只被看作像.50秒,因为我立即用主模板将其推开。我该如何推迟,所以它显示2-3秒,然后继续在屏幕上推我的实际主模板。有意拖延加载屏幕(setTimeout?)

function loadingTemplate() { 
    var loadingDoc = "<document> ... </document>"; 
    //parsing it as an xml 
    var parser = new DOMParser(); 
    var parsedTemplate = parser.parseFromString(loadingDoc, "application/xml"); 
    return parsedTemplate; 
} 

其他功能现在在一开始这样称呼它:

var loadingDocument = loadingTemplate(); 
navigationDocument.pushDocument(loadingDocument); 

然后代码是继与主文件正在推动loadingDocument路程。

我试图做这样的事情:

setTimeout(function() { navigationDocument.pushDocument(loadingDocument);}, 9000); 

却无法真正得到它的工作。有人有任何想法?

编辑:试图在屏幕上推送加载文档,然后在以下整个代码上延迟setTimeout。不工作尽管我是怎么做的:/

+0

什么你说的是:“我想通过显示3秒钟,即使装载机破坏用户体验的页面很快就装上了,因为我可以。“现在三秒钟的等待时间很长。如果我是你,我会实现机制,只有在渲染模板花费的时间比一些少量时间(例如500毫秒,取决于你的情况)时才显示加载模板。 –

+0

是的,我意识到,3秒很长。事情是,我只想在应用程序的开始时使用它。它不是这样说的:加载(+微调),但应用程序的名称和一些信息。 – randomcat

回答

0

这会耽误你的默认模板与2S:

clearTimeout(window.resizedFinished); 
    window.resizedFinished = setTimeout(function() { 
     /* default template */ 
    }, 2000);