java 安卓。重新加载网页视图
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/17774965/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Android. Reload Webview
提问by user2544501
I want to use window.loadUrl("Javascript:window.location.reload( true )");to reload a webview but can't get it to perform. May I get some advice or alternative solution? I simply want the button reloadto reload the webview window
我想使用window.loadUrl("Javascript:window.location.reload(true)"); 重新加载网络视图但无法执行。我可以得到一些建议或替代解决方案吗?我只是想让按钮重新加载重新加载 webview窗口
Thank you, Java below:
谢谢你,下面的Java:
package com.fortunecaster.android;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
public class FcastActivity extends Activity {
WebView window;
Button reload;
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_fcast);
window = (WebView)findViewById(R.id.webView1);
window.getSettings().setJavaScriptEnabled(true);
window.getSettings().setLoadWithOverviewMode(true);
window.getSettings().setUseWideViewPort(true);
window.setWebViewClient(new WebViewClient());
window.setWebChromeClient(new WebChromeClient());
window.getSettings().setAppCacheEnabled(true);
try {
window.loadUrl("http://www.fortunecaster.com/android-td");
} catch (Exception e) {
e.printStackTrace();
//setup button
reload = (Button)findViewById(R.id.button1);
//set onClickListener
reload.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
window.loadUrl("Javascript:window.location.reload( true )");
// TODO Auto-generated method stub
}
});
}
}
回答by Langusten Gustel
Maybe this is interesting for you:
也许这对你来说很有趣:
They suggest just to call loadURL()again.
他们建议再次调用loadURL()。
回答by Langusten Gustel
Just use this reload()method as,
只需使用这个reload()方法,
webview.reload();
回答by Odilbek Rahmonov
@Override
public void onClick(View v) {
window.loadUrl(window.GetUrl());
// TODO Auto-generated method stub
}
});
回答by ???
make a function to call webView, and reuse it.
创建一个函数来调用 webView,并重用它。
Moreover, you need to use webView.reload(); in quite front of coding to refresh(make it empty) the webView page.
此外,您需要使用 webView.reload(); 在编码之前刷新(使其为空)webView 页面。
protected void setWebView(){
window = (WebView)findViewById(R.id.webView1);
window.reload(); // this make empty window,
// so if you call setWebView() again,
// you might rebuild new webview from here.
window.getSettings().setJavaScriptEnabled(true);
window.getSettings().setLoadWithOverviewMode(true);
window.getSettings().setUseWideViewPort(true);
window.setWebViewClient(new WebViewClient());
window.setWebChromeClient(new WebChromeClient());
window.getSettings().setAppCacheEnabled(true);
window.loadUrl("http://www.fortunecaster.com/android-td");
}