繁体   English   中英

Android:启动画面和Webview

[英]Android: splash screen and webview

我已经尝试了好几天了,以获取在加载Web视图时显示启动屏幕的解决方案。

我环顾四周,有几种方法:-使活动仅显示初始屏幕,等待几秒钟,然后启动webview活动->这不是解决方案,因为所有的加载都在初始屏幕关闭后再次完成

  • 第二种方法是这样的:

      myWebView = (WebView) findViewById(R.id.webview); myWebView.getSettings().setJavaScriptEnabled(true); myWebView.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY); myWebView.setWebViewClient(new WebViewClient() { public void onPageFinished(WebView view, String url) { findViewById(R.id.webview).setVisibility(View.VISIBLE); //hide loading image findViewById(R.id.imageView1).setVisibility(View.GONE); //show webview } }); 

    这可行,但是在过渡到Webview时,再次出现了白色的屏幕。 而且,您也无法控制启动屏幕的时间。

  • 第三种解决方案是我想做的,但是(即使经过几天的搜索和尝试)也不知道如何->在一个线程中显示启动画面,在另一个线程中准备Web视图的所有内容,然后简单地切换到WebView 。

我的问题是,有人可以告诉我从第三个解决方案开始吗?

  • 我想尝试一些像这样 但是我不知道如何将webview传递给另一个活动,从我的阅读中得知,这甚至不是一个好主意。

有什么建议,想法,指针吗? 有没有一种方法可以显示启动画面,在另一个线程中准备(充气)webview,然后在加载URL(以及其他所有操作)之后切换到它?

谢谢!!!

尝试在Webview上使用WebChromeClient。 在WebChromeClient中,您有一个onProgressChange方法。

当onProgressChange告诉您页面已完成加载时,您可以消失启动屏幕。

编辑:例如,您可以使用HttpGet在线程中调用您的URL并检索响应。 收到响应后,可以使用loadData(...)方法加载Web视图。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM