创建一个 Windows Phone 7 应用程序,该应用程序使用 WebBrowser 小组件封装 HTML 5 Web 应用程序。
有什么方法可以保留启动屏幕 (splashscreenimage.jpg) 直到 WebBrowser 完全呈现网页吗? (在页面渲染之前显示白色)
最佳答案
在加载应用程序的第一页之前,将显示默认的屏幕截图图像。在此之后,内容将完成渲染。
WebBrowser
控件作为 Loaded
事件,但这与已呈现的页面内容不同。 (如果页面内容很复杂并且需要时间才能完全呈现,这将导致白屏/空白屏幕显示的时间长度。)
您需要实现自己的启动画面才能获得您想要的效果。在 XAML 而不是 HTML 中执行此操作,否则您的 HTML 初始屏幕将遇到与现在相同的问题。将图像添加到与 WebBrowser 相同的页面,但将其置于 WebBrowser 控件的顶部。一旦您知道底层内容已显示,请更改其可见性。
如果您对呈现页面内容所需的时间有信心,那么您只需在 WebBrowsers Loaded 事件触发后添加延迟即可。不过,您可能想在各种设备上进行测试。也许还需要增加一点额外的时间来确保。
如果您不知道需要多长时间,请留出足够的时间以确保大多数情况下它都会加载,并且您不会在启动时遇到任何市场认证要求。如果这是一个问题,您可能需要确保加载的第一个 HTML 页面很简单,然后逐步加载其余内容。
或者,您可以向页面添加一些代码,一旦加载文档正文,这些代码就会通知托管页面。
关于javascript - 显示启动屏幕,直到 Web 浏览器呈现页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8451539/